我有一个程序迭代文本文件的所有行,在字符之间添加空格,并将输出写入同一文件。但是,如果输入中有多行,我希望输出也有单独的行。我试过了:
let text = format!(r"{}\n", line); // Add newline character to each line (while iterating)
file.write_all(text.as_bytes()); // Write each line + newline
以下是输入文本文件的示例:
foo
bar
baz
及其输出:
f o o\n b a r\n b a z
Rust似乎将"\n"
视为转义的n
字符,但使用r"\n"
将其视为字符串。如何将Rust \n
作为换行符将多行写入文本文件?
注意:如果您需要,我可以包含我的其余代码,请告知我们。
编辑:我在Windows 7 64位
答案 0 :(得分:3)
问题是你的字符串前面的'r'。删除它,你的程序将打印换行而不是'\ n'。
另请注意,只有大多数Unices使用'\ n'作为换行符。 Windows使用“\ r \ n”。