
Ich habe versucht, die Ausgabe in eine Textdatei mit Umleitungsoperatoren > and >>
aus einer Java-Klasse durchzuführen, aber es ignoriert den Zeilenvorschub \n
von Java, wenn die.txtDie Datei wird geöffnet mit demNotizblockvon Windows 10. Es ist interessant, weil auf derpromptder Zeilenvorschub funktioniert einwandfrei und wenn ich System.out.println("")
ihn verwende, funktioniert er normal in derNotizblock.
Klasse mit \n
Zeilenvorschub:
class n{
public static void main(String[] args){
System.out.print("This\n");
System.out.print("Should\n");
System.out.print("Be\n");
System.out.print("Separated.\n");
}
}
Klasse verwendet System.out.println("")
:
class ln{
public static void main(String[] args){
System.out.println("This");
System.out.println("Should");
System.out.println("Be");
System.out.println("Separated.");
}
}
Ausgabe imprompt:
Ausgabe in Textdatei vonKlasse n(n.txt) eröffnet mitNotizblock:
ThisShouldBeSeparated.
Ausgabe in Textdatei vonKlasse ln(Datei:ln.txt) eröffnet mitNotizblock:
This
Should
Be
Separated.
Die beiden oben genannten sollten gleich sein.
Ich testete mit demKlasse n öffentlichaber es hat das Ergebnis nicht geändert.
Ich habe gesucht und gefunden, wie man echo
einen Zeilenvorschub, das ist nicht, was ich will, ich will die umgeleitete Textdatei arbeiten wie dieprompt.
Ein interessantes Detail ist, wenn ich den Text einfüge vonn.txthier drin (eine Frage schreiben), imMicrosoft Word,Notizblock++oderWordPad(oder öffnen Sie die Datei in den angegebenen Programmen) es "behob" den Fehler und war gleich dem Ergebnis vonKlasse ln.
BEARBEITEN
Ich denke, es ist kein Duplikat, denn als ich die Frage schrieb, dachte ich nicht einmal an die MöglichkeitNotizblockProblem. Der Titel ist völlig anders, also habe ich meine eigene Frage für Leute beantwortet, die nicht dachten, dass das Problem das istNotizblock, wie ich zuvor, möglicherweise eine gute Lösung.
Falls ich falsch liege, freue ich mich über eine Korrektur.
Antwort1
Bei weiterer Suche nach Zeilenvorschub und Textdateien fand ich eineFragehier imSuperuserCommunity, die erklärt hat, was passiert.
Das Problem ist nichtprompt, ist derNotizblockausWindows(in meinem Fall Windows 10, im Fall des Autors der anderen Frage Windows 7), die diese Art vonZeilenvorschub, und zitiert @Paul, der die Frage beantwortet hat, von der ich spreche:
Der Editor erkennt nur CR, LF (0x0d, 0x0a), während andere Quellen möglicherweise nur CR oder nur LF verwenden.
Als ersten Texteditor empfehle ich denWordPadoderNotePad++die normal funktionieren.
ImNotizblock:
InNotizblock++UndWordPad:
Eine andere mögliche Lösung besteht darin, den Text aus demNotizblock, Einfügen in dieNotizblock++,WordPad,Microsoft Wordoder einen beliebigen Texteditor, der diese Art von Zeilenumbruch erkennt, und kopieren Sie ihn dann zurück.
Weitere Informationen finden Sie in der Frage„Editor ignoriert Zeilenumbrüche“.