2016-04-22 17 views
9

Durante lo sviluppo di GUI con Java FX, mi sembra di ottenere risultati diversi con System.getProperty ("line.separator"); e "\ n" durante la scrittura di un file o la ricezione di dati da internet. Qual'è la differenza?Differenza tra System.getProperty ("line.separator"); e n" ?

+0

Ci sono diverse domande fortemente correlate. Non sono sicuro se uno si qualifica perfettamente come duplicato, ma almeno la tua domanda è fondamentalmente la risposta qui: http://stackoverflow.com/a/33505978/3182664 – Marco13

risposta

18

System.getProperty("line.separator") restituisce il separatore di riga dipendente dal sistema operativo.

Su Windows restituisce "\r\n", su Unix "\n". Pertanto, se si desidera generare un file con terminazioni di riga per i sistemi operativi correnti, utilizzare System.getProperty("line.separator") o scrivere utilizzando PrintWriter.

+0

Quindi, quale pensi sia meglio? Suggerisci per favore –

+0

@TilakMadichetti dipende dal caso d'uso. Se si desidera interruzioni di riga per il sistema operativo corrente, utilizzare il primo modulo. Cosa vuoi scrivere? – wero

+0

Voglio scrivere un elenco enorme di parole in un file e un intervallo di righe b/n ogni parola. –

7

sulla piattaforma Windows, System.getProperty ("line.separator") è "\ r \ n", "\ n" (Linux e MacOS X), "\ r" (MacOS 9 e precedenti)

+0

Ottieni la mia upvote per menzionare la vecchia riga '\ r' separatori! – Aaron

+0

lol, hai visto che @ Aaron - Bad Aaron! –

7

System.getProperty("line.separator") dipende dalla piattaforma:

  • "\ n" su macchine di tipo UNIX
  • "\ r \ n" su macchine Windows

Mentre "\ n" è solo "\ n ".

2

"\ n" è il separatore di riga per la maggior parte dei sistemi operativi come Linux/Unix. Per garantire la compatibilità con qualsiasi sistema operativo, interrogare questo valore con System.getproperty

Problemi correlati