使用R 3.1.2和Mac OS X 10.6编写带有西班牙语口音的csv文件时遇到问题。
我无法将带有重音的单词写入文本文件。
当我这样做时:
con <- file("y.csv",encoding="UTF-8")
write.csv("Ú",con)
我得到的y.csv文件包含以下内容:
“”, “x” 的 “1”, “√ö”
即“√ö”而不是“Ú”。
使用write.table
时,结果是等效的。
编码(“Ú”)是“UTF-8”
如果我write.xlsx("Ú","y.xlsx")
,我会获得成功显示Ú的y.xlsx文件。
我还尝试使用iconv()
转换为其他编码但没有成功。
我在RStudio和TextEdit中设置了默认编码“UTF-8”。当仅使用R(不是RStudio)时,问题是相同的。 在RStudio中,特殊字符正确显示(在文件中),也在R。
的控制台中显示 Sys.getlocale()
给出
"es_ES.UTF-8/es_ES.UTF-8/es_ES.UTF-8/C/es_ES.UTF-8/es_ES.UTF-8"
在Mac OS X终端
file -I y.csv
给出
y.csv: text/plain; charset=utf-8
我看不出问题出在哪里。有什么帮助吗?
答案 0 :(得分:0)
刚刚遇到另一个问题似乎与此问题几乎相同:
答案 1 :(得分:0)
问题不在于R中的编码问题,而是来自TextEdit,虽然我在首选项中选择了UTF-8编码,但它没有显示正确的字符。使用不同的编辑器解决了。我使用的是Mac OS X 10.6.8和TextEdit 1.6。
答案 2 :(得分:0)
也许您会用重音写单词,但是Excel要求使用不同的编码。尝试使用例如write_csv()
编写csv,然后使用变通方法打开csv: