Bunları hatırlayamıyorum. Peki, eski moda ASCII hatlarını doğru bir şekilde sonlandırmanın doğru yolu nedir?
Bunları hatırlayamıyorum. Peki, eski moda ASCII hatlarını doğru bir şekilde sonlandırmanın doğru yolu nedir?
Yanıtlar:
Hatırlamak için ' r etur n ' kelimesini kullanırdım, r n'den önce gelir.
\n\r
ve \r\n
onlar, aynı etkiyi yapmak değil aynı? Farkı söyleyebilir misin?
C # kullanıyorsanız Environment.NewLine
, MSDN'e göre kullanmanız gerekir :
Unix olmayan platformlar için "\ r \ n" içeren bir dize veya Unix platformları için "\ n" içeren bir dize.
Environment.NewLine
, sorun yoktur. Ancak, işleri iyi tanımlanmış bir biçimde yazıyorsanız, biçim de yeni satırı tanımlayabilir. Örneğin, HTTP protokolü , platformdan bağımsız olarak, üstbilgiler vb. İçin satır sonlandırıcı olarak kullanmanız gerektiğini belirtir \r\n
.
Yeni hat işletim sisteminize bağlıdır:
DOS & Windows: \r\n 0D0A (hex), 13,10 (decimal)
Unix & Mac OS X: \n, 0A, 10
Macintosh (OS 9): \r, 0D, 13
Daha fazla ayrıntı burada: https://ccrma.stanford.edu/~craig/utility/flip/
Şüphe duyduğunuzda, bir dosyanın yeni satırını nasıl kodladığını görmek için herhangi bir ücretsiz hex görüntüleyici / düzenleyici kullanın.
Benim için hatırlamama yardımcı olması için aşağıdaki kılavuzu kullanıyorum: 0D0A = \ r \ n = CR, LF = ca rr iage r eturn, li n e feed
0D0A
ezbere, ama yine karıştırır \r
ve \n
.
Dizi CR (Satır Başı) - LF (Satır Besleme) şeklindedir. Nokta vuruşlu yazıcıları hatırlıyor musunuz? Kesinlikle. Yani - doğru sipariş \ r \ n
Herhangi bir .NET dilinde, Environment.NewLine
tercih edilir.
Bunu manuel olarak yaparken dikkatli olun.
Aslında bunu hiç yapmamanızı tavsiye ederim .
Gerçekte, platforma özgü hat sonlandırma sekansı LTS'den bahsediyoruz.
Bir dosyayı metin modunda açarsanız (yani ikili değil), akışlar "\ n" yi platformunuz için doğru LTS'ye dönüştürür. Daha sonra dosyayı okuduğunuzda LTS'yi tekrar "\ n" biçimine dönüştürün.
Sonuç olarak, bir windows dosyasına "\ r \ n" yazdırırsanız, fiziksel dosyada "\ r \ r \ n" dizisini alırsınız (onaltılık düzenleyiciye bir göz atın).
Tabii ki bu, platformlar arasında dosya aktarımı söz konusu olduğunda gerçek bir acıdır.
Şimdi bir ağ akışına yazıyorsanız, bunu manuel olarak yaparım (çoğu ağ protokolü bunu özel olarak adlandırır). Ancak akışın herhangi bir yorumlama yapmadığından emin olurum (bu nedenle ikili mod uyguntu).
\r\n
Windows için gayet iyi yapacağız.
\n
Not Defteri'nin son sürümü de dahil olmak üzere tek bir pencere de iyi çalışır.
Gönderen Vikipedi (bu makalenin adresinden OS için doğru olan okuyabilir):
ASCII veya uyumlu bir karakter kümesine dayanan sistemler ayrı ayrı LF (Satır besleme, '\ n', 0x0A, 10 ondalık) veya CR (Satır başı, '\ r', 0x0D, ondalık 13) veya CR'yi kullanır LF (CR + LF, '\ r \ n', 0x0D0A).
\r\n
Hatırladığım kadar garip çünkü kullandığım daktilonun tam tersi .
Normal olsaydı hatırlamaya gerek yoktu ...:-)
Eğer rakama hattı bitirmek daktilo olarak kullanmak satırbaşı kolunu markaları davul, rulo önce, yeni satır sonra ve el çalışmasına izin satırbaşı .
Sen dinleyebilirsiniz freesound.org bu kayıttan başında kağıt besleme ses ve civarında -1: ucundan 03 saniye, tamburun hat sesin sonu için çan uyarıdan sonra o rulo ve sonrası taşıma dönüşlerinden biri.