我正在使用Windows 7 64位系统上的R 2.15.0。我想将Unicode(CJK)文本输出到文件。
以下代码展示了将Unicode字符发送到UTF-8文件连接中写入时不起作用的情况:
rty <- file("test.txt",encoding="UTF-8")
write("在", file=rty)
close(rty)
rty <- file("test.txt",encoding="UTF-8")
scan(rty,what=character())
close(rty)
正如 scan 的输出所示:
Read 1 item
[1] "<U+5728>"
文件没有使用UTF字符本身,而是一种符合ANSI标准的回退方式。我能否在第一次就让它正常工作(即使文本文件中有“在”这样的字符),或者我可以进行额外的魔法操作来将输出转换为Unicode,并用适当的字符替换代码字符串?谢谢。
[更多信息:相同的代码在Cygwin、R 2.14.2中表现得正确,而在Win7上的2.14.2也出现问题。这是我的问题吗?]