2012-10-28 60 views
4

我写一个程序,读取距离R中的文本文件阿拉伯文文本,每当我读文件我得到以下错误:R输入文件阿拉伯文?

Warning messages: 
1: In read.table("C:\\Users\\Mustafa\\Desktop\\arabic.txt", sep = "\n", : 
invalid input found on input connection 'C:\Users\Mustafa\Desktop\arabic.txt' 
2: In read.table("C:\\Users\\Mustafa\\Desktop\\arabic.txt", sep = "\n", : 
incomplete final line found by readTableHeader on 'C:\Users\Mustafa\Desktop\arabic.txt' 


File<-read.table("C:\\Users\\Mustafa\\Desktop\\arabic.txt",sep=" \n",col.names="ar",fileEncoding="UTF-8") 

我不知道在哪里的错误是,我使用的是环境窗口,在Mac OS上它工作文件,但是我必须在Windows上运行它!任何帮助表示赞赏。

谢谢!

+4

这意味着您的数据中存在非UTF-8字符。尝试在指定的行中加载,以查看是否可以缩小可能的范围。或者,有时你可以在Excel中打开它,转换为csv并且问题消失。当我用其他语言工作时,通常会发现''和'''字符是我的罪魁祸首。 –

+0

我会尝试你的方法逐行添加它们,我尝试过设置系统区域设置,它修复了它我可以读取阿拉伯字符,我也会尝试excel方法,非常感谢 – user1781405

+2

如果它适用于macos但不是windows,很好的机会行尾字符并不是Windows“喜欢的东西”。这是一个古老的问题 vs - vs 。您可能能够在写字板中打开文件,执行SaveAs(仅限文本),问题将消失。 –

回答

1

此错误消息表示您的文件未以EOL(行尾字符)结尾,例如\n\r\n

这是一种warning您的文件可能没有完成。它似乎在MAC上被忽略,但在Windows中它被认为是错误的。

解决方案很简单,只需在文件末尾添加一行,保存并重试。

0

以下代码适用于我。

Sys.setlocale("LC_ALL","Arabic") 
相关问题