R数据进出口手册说有一种猜测文本文件编码的好方法是使用" file“命令行工具(在R工具中可用)。一个人怎么用这个?我已经安装了最新版本的Rtools。这是我的R会话可以做的事吗?还是需要打开命令提示符?
发布于 2015-11-11 13:32:32
发布于 2015-11-11 13:56:47
这里的“命令提示符”是指“终端”窗口(OS或Linux)或“命令提示符”(Windows)。从这些操作中,您可以访问命令行file实用程序,正如手动声明的那样,该实用工具很好地描述了(文本)文件的类型和格式。
您也可以从R直接运行,使用system()函数传递对file的调用。例如,在我的系统中,在当前的工作目录中,我有三个文本文件:
> list.files(pattern = "*.txt")
[1] "00005802.txt" "googlebooks-eng-all-totalcounts-20120701.txt"
[3] "sentences.txt"
> system("file *.txt")
00005802.txt: Par archive data
googlebooks-eng-all-totalcounts-20120701.txt: ASCII text, with very long lines, with no line terminators
sentences.txt: ASCII English text, with very long lines当文件只包含较低的128个ASCII字符时,该文件可能会调用“纯ASCII”,但这将与UTF-8相同,因为这两个编码共享相同的前128个ASCII字符的8位映射。
而且,文件并不总是正确的--例如,00005802.txt实际上是UTF-8编码的文本,我用pdftotext从一个pdf转换而来。
还要注意,在大多数Windows平台上,您不能在R中将系统区域设置为UTF-8,尝试使用Sys.getlocale()。(要设置它,请使用Sys.setlocale())。
https://stackoverflow.com/questions/33651439
复制相似问题