Wiem, że Java zaleca użycie line.separator dla \n nowej linii, ponieważ niektóre systemy operacyjne niekoniecznie rozpoznają \n. Jakie to systemy operacyjne?

http://docs.Oracle.com/javase/tutorial/essential/environment/sysprop.html.

1
Oh Chin Boon 5 marzec 2012, 05:36

2 odpowiedzi

Najlepsza odpowiedź

W systemie Windows \r\n jest sekwencją nowego wiersza.

Oryginalny Mac OS (ale nie OS X) używa \r.

8
Taymon 5 marzec 2012, 05:38

Jestem prawie pewien, że Java tłumaczy \n na odpowiedni znak nowej linii dla używanego systemu operacyjnego, ułatwiając w ten sposób pracę programisty.

---- EDYTOWAĆ ----

Okazuje się, że to, co napisałem powyżej, może być niepoprawne, chociaż uważam, że jest to poprawne w przypadku niektórych scenariuszy, np. w kontrolkach interfejsu użytkownika itp. Ale tutaj są dwie metody na dwóch różnych klasach, których możesz użyć do zapisania znaków nowej linii odpowiednich dla systemu operacyjnego do pliku, zamiast próbować zarządzać nimi samodzielnie:

PrintWriter.println()

I

BufferedWriter.newLine()

1
joshuahealy 5 marzec 2012, 06:32