ant*_*nio 7 r utf-8 internationalization character-encoding cyrillic
当使用R函数来操作Windows中的文件时,例如dir(),那些具有非英语字符的文件(如西里尔文)将显示为"?"序列.
同样,在使用时file.rename(),如果新名称包含非英文字符,则使用不可读的字符重命名该文件,显然映射到不同的编码.
有许多函数处理文件内容的编码,但我们如何处理文件名?
重现问题:
外部R在工作目录中创建文件"привет.txt"; 然后在R:
dir()
# [1] "??????.txt"
# ...
Run Code Online (Sandbox Code Playgroud)
请注意设置:
Sys.setlocale(category = "LC_ALL", locale="Russian")
Run Code Online (Sandbox Code Playgroud)
没有帮助.
注意:我正在使用R 3.1.2 for Windows,在Windows 8.1下使用英语和Windows控制台(cmd.exe)我正确地看到了西里尔字母.
小智 4
尝试这个:iconv("\xd0\xbf\xd1\x80\xd0\xb8\xd0\xb2\xd0\xb5\xd1\x82.txt","UTF-8","CP1251")
在编码之间转换字符向量:
https://stat.ethz.ch/R-manual/R-devel/library/base/html/iconv.html
iconv 库:
\n http://www.delorie.com/gnu/docs/recode/recode_30.html
| 归档时间: |
|
| 查看次数: |
2407 次 |
| 最近记录: |