试图在ruby中加载这个json文件.Json分析程序错误



我基本上是在尝试加载这个json文件,这样我就可以在版本数组中循环,但我得到了以下json::ParserError。

{
"key1":  "value",
"key1":  "value",
"others_legacy_software":  [
"value",
"value",
"value"
],
" key1 ":  "...",
" key1 ":  "...",
" key1 ":  "...",
" needed_additional_dataversions":  [
"2020",
"2019",
"2018",
"2017"
],
" blahblahblah ":  " "
}

我尝试过以下几种:

file = File.open "releaseinfo.json"
data_versions = JSON.load file
file.close
# I want to be able to do the following:
data_versions['needed_additional_dataversions']
# and then loop over the values for some functions

但我得到以下错误

JSON::ParserError
-----------------
795: unexpected token at '��{'

我看到了什么意想不到的象征?我该如何解决这个问题?已经坚持了几个小时了

编辑:

PD_5

json由Dynamo查询返回,然后使用ConvertFrom json(Powershell(转换为Powershell对象,然后使用ConvertTo json重新转换为json,然后输出到文件中。–杨27分钟前

有人为我们设置了BOM

我的最佳猜测是,在所有转换中添加了一个字节顺序标记(BOM(;文件开头的几个字节,说明如何读取。现在大多数东西都使用UTF-8,很少需要BOM,但Windows在UTF-8方面已经很晚了。

如果你的阅读器没有期望BOM,而大多数东西都没有,它会把BOM读成垃圾。

使用十六进制编辑器查看该文件,以了解该文件的前几个字节到底是什么。

最新更新