Schreiben von mehrzeiligen text-Dateien in Lua
Ich würde gerne wissen, der beste Weg, um mein Skript etwas schreiben in eine Datei (sagen wir text.txt
) in einer Weise, die würde fügen Sie immer einen Zeilenumbruch am Ende. Wenn ich das anfügen von text mit
file = io.open(test.txt, "a")
file:write("hello")
zweimal, die Datei sieht so aus:
hellohello
Aber ich will es so Aussehen:
hello
hello
Du musst angemeldet sein, um einen Kommentar abzugeben.
Im Gegensatz zu
print
, das neue-Zeile-Zeichen nicht automatisch Hinzugefügt, wenn Berufungio.write
haben, können Sie Sie selbst hinzufügen:Der einfachste Weg dies zu erreichen wäre eine Newline-Zeichen-Sequenz jedes mal, wenn Sie rufen Sie die
write
Methode etwa so:file:write("hello\n")
oder so:file:write("hello", "\n")
. Auf diese Weise, ein Skript wieführen würde, die gewünschte Ausgabe:
Gibt es aber noch viele andere Lösungen (einige sind eleganter als die anderen). Bei der Ausgabe von text in Java, zum Beispiel, gibt es spezielle Methoden wie
BufferedWriter#newLine()
, wird das tun die gleiche Sache in einem mehr-Reiniger Mode. Also, wenn Ihr Interesse auf eine andere Weise, dies zu erreichen, schlage ich vor, Sie Lesen, auf die Lua-docs für die analoge Methoden/Lösungen.