2012-10-28 93 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") 
相關問題