在 ruby​​ 1.9.3 之前,我能够使用 Ruby 的 CSV 库摄取包含编码不正确的字符的行:

require 'csv'
CSV.open('file').each |row|
   ... #deal with wrong encoded characters here
end
Ruby 1.9.3 中的 CSV 引发了带有“坏”行的异常——ArgumentError: invalid byte sequence in UTF-8,我无法弄清楚如何在块内捕获。我看到两种解决方案,都很慢:
1. ~8 倍慢:

2. ~2 倍慢
在将文件发送到 CSV 之前修复文件中的编码。
处理包含“坏”字符的行的更快方法是什么?

最佳答案

CSV.open("file", "r:bom|utf-8").each |row|

end

关于ruby - 如何处理 Ruby 1.9.3 CSV 类中的字符编码异常?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/11834162/

10-13 08:27
查看更多