Javascript Phantomjs-使用fs.write()将数据写入新行不会进入下一行

Javascript Phantomjs-使用fs.write()将数据写入新行不会进入下一行,javascript,phantomjs,casperjs,Javascript,Phantomjs,Casperjs,我不能让phantomjs写新行。我可以让它替换数据,我可以让它写到最后,我可以让它注册“\n”代码,但它只是从字符串中删除了它,而没有实现它 下面是im用来写入文件的一些代码的示例 fs.write("example.txt", "write me first", "a"); fs.write("example.txt", "\n write me to the next line bro!", "a"); 但它的输出如下 write me first write me to the ne

我不能让phantomjs写新行。我可以让它替换数据,我可以让它写到最后,我可以让它注册“\n”代码,但它只是从字符串中删除了它,而没有实现它

下面是im用来写入文件的一些代码的示例

fs.write("example.txt", "write me first", "a");
fs.write("example.txt", "\n write me to the next line bro!", "a");
但它的输出如下

 write me first write me to the next line bro!
有人知道如何解决这个问题吗?如果所有错误都在一行中,则很难查看包含历史记录的错误日志

我尝试了“\n”和“\r”

-----编辑------

我已经成为一个更强大的开发者。我现在意识到这一直都是对的。这不是我的代码的问题,甚至不是phantomjs/casperjs的问题,而是记事本的问题

由于缺乏简单性,我没有使用ide。正因为如此,我遇到了微软试图在记事本中重新格式化内容的问题

如果其他新手正在使用记事本或任何其他默认文本编辑器,您也可能会遇到这种情况


考虑切换到许多IDE或代码编辑器之一。windows上过于简单的notepad++或mac上的textwrangler应该会给你一种与默认编辑器类似的感觉。

你使用的是什么版本的PhantomJS

在Linux下,使用PhantomJS 1.9.7,我可以使用以下
test.js

fs = require('fs');
fs.write("test.dat", "write me first", "a");
fs.write("test.dat", "\nwrite me to the next line", "a");
phantom.exit();
write me first
write me to the next line
要在
test.dat
中通过运行
phantomjs test.js
获得以下输出:

fs = require('fs');
fs.write("test.dat", "write me first", "a");
fs.write("test.dat", "\nwrite me to the next line", "a");
phantom.exit();
write me first
write me to the next line

这是我以前的帖子。我把它改写得更专业一些

提到的问题是microsoft记事本的问题。它忽略了某些车厢。我确信有一种方法可以让它注册它们,但在我当时使用的Windows7组件上,默认情况下它没有打开

更高级的编辑器,或者基本上任何代码编辑器/ide都应该能够处理这些问题

对于其他新手来说,车厢基本上是“下一行”的原始代码。


^^>>我知道这不太可能是技术上的回应,但对于一个新手来说,这是一个体面而清晰的回应,他很可能是通过谷歌找到这个页面的人之一。请不要将其编辑为超高级定义。

如果您使用记事本++打开输出文件,您将使用新行获取数据。普通记事本不显示换行符。

Windows使用\r\n换行符

\r是回车符,\n是换行符


这是对旧打字机的参考,旧打字机需要将打印头(托架)放回每一行的开头。

1.9.2让我快速升级,看看是否能解决问题。我真的希望这就是解决办法。为这些问题感到抱歉。我想出来了。记事本不允许存在。我删除这个问题-编辑-不允许我删除。我留下了一个答案,以防其他人有同样的问题“记事本不应该被允许存在。”-告诉微软:-)这并不能回答这个问题。若要评论或要求作者澄清,请在他们的帖子下方留下评论。我给你的答案打上了标记,但没有选择它。我遇到的问题主要是新手才会遇到的问题。我不明白我遇到的问题。你还是回答得很好。