2016-04-22 12 views
9

Während ich GUI mit Java FX entwickle, scheint ich mit System.getProperty ("line.separator") andere Ergebnisse zu erzielen; und "\ n" beim Schreiben in eine Datei oder beim Abrufen von Daten aus dem Internet. Was ist im Grunde der Unterschied?Unterschied zwischen System.getProperty ("line.separator"); und " n"?

+0

Es gibt mehrere stark verwandte Fragen. Ich bin mir nicht sicher, ob man sich vollkommen als Duplikat qualifiziert, aber zumindest wird deine Frage hier grundsätzlich beantwortet: http://stackoverflow.com/a/33505978/3182664 – Marco13

Antwort

18

System.getProperty("line.separator") gibt das vom Betriebssystem abhängige Trennzeichen zurück.

Unter Windows "\r\n", unter Unix "\n". Wenn Sie also eine Datei mit Zeilenenden für die aktuellen Betriebssysteme generieren möchten, verwenden Sie System.getProperty("line.separator") oder schreiben Sie mit einer PrintWriter.

+0

Also, was denkst du ist besser? Schlage bitte vor. –

+0

@TilakMadichetti hängt vom Anwendungsfall ab. Wenn Sie Zeilenumbrüche für Ihr aktuelles Betriebssystem benötigen, verwenden Sie das erste Formular. Was möchtest du schreiben? – wero

+0

Ich möchte eine riesige Liste von Wörtern in eine Datei und eine Zeile Lücke s/w jedes Wort schreiben. –

7

auf der Windows-Plattform, System.getProperty ("line.separator") ist "\ r \ n", "\ n" (Linux und MacOS X), "\ r" (MacOS 9 und älter)

+0

Du erhälst meine Erwähnung für die Erwähnung der älteren '\ r' Zeile Trennzeichen! – Aaron

+0

lol, das hast du gesehen @Aaron - Bad Aaron! –

7

System.getProperty("line.separator") ist plattformabhängig:

  • "\ n" auf Maschinen UNIX Stil
  • "\ r \ n" auf Windows-Rechnern

Während "\ n" ist nur „\ n ".

2

«\ n» ist das Zeilentrennzeichen für die meisten Betriebssysteme wie Linux/Unix. Vergleichen Sie diesen Wert mit System.getproperty, um die Kompatibilität mit jedem Betriebssystem sicherzustellen.

Verwandte Themen