2010-05-24 75 views
0

在閱讀文件,我得到broken UTF-8 String error每當我已經在我的文件破UTF-8串紅寶石

través

下,如果我將其更改爲正常e然後它工作。

解決這個問題的方法是什麼?

錯誤只發生在我做line.lstrp或任何其他功能。只需打印行就可以了。

問題甚至發生在我嘗試用正則表達式匹配字符串時。

回答

0

顯然你的文件不是UTF-8編碼的。所以,你應該照顧它(使用UTF-8保存你的文件),或者告訴Ruby你的字符串不會是UTF-8。爲了做到這一點,您可以

  • 使用使用RUBYOPT環境變量
  • -E encoding-E encoding命令行開關指定的Ruby註釋中的編碼
  • force_encoding方法之前已經加載字符串操作如lstrp

有很多與Ruby編碼有關的re在以下博客上添加:

http://blog.grayproductions.net/articles/understanding_m17n