考虑这个文件: ansi-to-html_bundle.js。
在这里,我cat ansi-to-html_bundle.js
使用. 这将返回文件行:system2
stdout = TRUE
fileLines <- system2("cat", "ansi-to-html_bundle.js", stdout = TRUE)
writeLines(fileLines, "ansi-to-html_bundle_cat1.js")
现在我cat ansi-to-html_bundle.js
使用system2
. stdout
这将写入此文件:
system2("cat", "ansi-to-html_bundle.js", stdout = "ansi-to-html_bundle_cat2.js")
然后,如果我比较获得的两个文件ansi-to-html_bundle_cat1.js和ansi-to-html_bundle_cat2.js,它们是不同的(下面的 WinMerge 屏幕截图):
这是一个错误还是有合理的解释?
我认为这个问题发生在 Windows 上而不是 Linux 上。这似乎与文件中存在 UTF-8 字符有关。正确的文件(类似于原始文件)是第二个文件。