我的Windows机器上有一个相当大的JSON文件,它包含类似的东西\xE9
.当JSON.parse
它,它工作正常.
但是,当我将代码推送到运行CentOS的服务器时,我总是这样: "\xE9" on US-ASCII (Encoding::InvalidByteSequenceError)
这是file
两台机器的输出
视窗:
? file data.json data.json: UTF-8 Unicode English text, with very long lines, with no line terminators
CentOS的:
$ file data.json data.json: UTF-8 Unicode English text, with very long lines, with no line terminators
这是我在尝试解析它时遇到的错误:
$ ruby -rjson -e 'JSON.parse(File.read("data.json"))' /usr/local/rvm/rubies/ruby-2.0.0-p353/lib/ruby/2.0.0/json/common.rb:155:in `encode': "\xC3" on US-ASCII (Encoding::InvalidByteSequenceError)
什么可能导致这个问题?我已经尝试使用iconv将文件更改为我可以使用的每种可能的编码,但似乎没有任何工作.