C # 'statik özelliği vardır Environment.Newline çalışan platformuna bağlı değişti.
Java'da benzer bir şey var mı?
C # 'statik özelliği vardır Environment.Newline çalışan platformuna bağlı değişti.
Java'da benzer bir şey var mı?
Yanıtlar:
Java 7 (ve Android API düzey 19) itibarıyla:
System.lineSeparator()
Belgeler: Java Platform SE 7
Java'nın eski sürümleri için şunları kullanın:
System.getProperty("line.separator");
Diğer özellikler için https://java.sun.com/docs/books/tutorial/essential/environment/sysprop.html adresine bakın .
Java 7'den itibaren:
System.lineSeparator()
Java API'sı: System.lineSeparator
Sisteme bağlı satır ayırıcı dizesini döndürür. Her zaman aynı değeri döndürür - system özellik line.separator öğesinin başlangıç değeri. UNIX sistemlerinde "\ n" döndürür; Microsoft Windows sistemlerinde "\ r \ n" döndürür.
Bu mülkün birçok insanın düşündüğü kadar yararlı olmadığını unutmayın. Örneğin, uygulamanızın bir Windows makinesinde çalışması, okuduğu dosyanın Windows tarzı satır ayırıcıları kullanacağı anlamına gelmez. Birçok web sayfası, farklı kaynaklardan bir araya getirilmiş "\ n" ve "\ r \ n" karışımlarını içerir. Metni bir dizi mantıksal satır olarak okurken, her zaman üç satır ayırıcı stilin üçünü de aramalısınız: Windows ("\ r \ n"), Unix / Linux / OSX ("\ n") ve OSX öncesi Mac ("\ r").
Eğer olduğunuzda yazma metin, daha fazla dosya üzerinde çalışan hangi platform daha nasıl kullanılacağını ile ilgili olmalıdır. Örneğin, insanların dosyayı Windows Not Defteri'nde okumasını beklerseniz, yalnızca tek bir tür ayırıcıyı tanıdığı için "\ r \ n" kullanmalısınız.
(?:\r?\n|\r)için (?:\r?n), ama hayır, güvenli olduğunu sanmıyorum. (?:\r\n|[\r\n])Yine de tercih ederim ; Daha fazla karakter olduğunu biliyorum, ama daha temiz görünüyor. : D Kaç çizgi ayırıcı kullandığınız önemli değilse , [\r\n]+gayet iyi çalışır.