【发布时间】:2017-12-15 05:54:35
【问题描述】:
我想使用write.table 编写一个文件并将UTF-8 用作encoding。只要我不附加到这个文件,它就可以工作。当我这样做时,encoding 更改为 ANSI。为什么会这样?我该如何预防?
这是一个小示例代码:
options("encoding" = "UTF-8")
write.table("Hello World in UTF-8", file = "C:/TEMP/test.txt", col.names = FALSE, row.names = FALSE, sep = "", quote = FALSE)
write.table("Now it changes to ANSI", file = "C:/TEMP/test.txt", col.names = FALSE, row.names = FALSE, sep = "", quote = FALSE, append = TRUE)
我也试过直接在write.table中使用fileEncoding = "UTF-8",结果还是一样。
【问题讨论】:
-
你怎么知道
encoding已经变成ANSI?对我来说,它工作得很好。该文件仍在UTF-8。 -
我在 Notepad++ 中打开文件,它告诉我
encoding。 -
我也用过 Notepad++,它显示了
UTF-8编码。 -
好的。似乎是 NP++ 而不是 R 的问题。如果我关闭文件并再次打开它,它也会告诉我
UTF-8。