Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/476.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/87.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 将json文件导入到R时出现意外字符错误_Javascript_Jquery_Json_R - Fatal编程技术网

Javascript 将json文件导入到R时出现意外字符错误

Javascript 将json文件导入到R时出现意外字符错误,javascript,jquery,json,r,Javascript,Jquery,Json,R,我试图将一个本地json文件加载到R中。我尝试了rjson和RJSONIO包,但得到了相同的错误。 例如,对于rjson软件包,我尝试了以下方法: testdata<-fromJSON(file="testfile2.json",method="C",unexpected.escape="skip") 如果有人能说出我做错了什么就好了。谢谢大家! 几乎可以肯定这是一个编码问题(正如timelyportfolio所建议的那样)。意外字符与UTF-16 BOM(字节顺序标记)字符一致 如果你

我试图将一个本地json文件加载到R中。我尝试了rjson和RJSONIO包,但得到了相同的错误。 例如,对于rjson软件包,我尝试了以下方法:

testdata<-fromJSON(file="testfile2.json",method="C",unexpected.escape="skip")

如果有人能说出我做错了什么就好了。谢谢大家!

几乎可以肯定这是一个编码问题(正如timelyportfolio所建议的那样)。意外字符与UTF-16 BOM(字节顺序标记)字符一致

如果你跑

f <- file("testfile2.json", "rb")
bytes <- readBin(f, integer(), n = 500, size = 1)
close(f)
bytes
例如,问题中的json示例和一个没有有趣字符的文件


另一方面,如果输出中有“-1”或“255”,那么编码是错误的,您必须在允许您指定编码的编辑器中打开并重新保存原始json文件

由于错误与“escape”相关,您是否尝试过将JSON文件设为一行?以防万一这是一个行尾字符问题。你试过jsonlite吗?文件的编码是什么?谢谢你的帮助。白海盗的回答解决了问题!你真棒!成功了。我在一个编辑器中将它改为UTF-8,现在错误消失了。你有没有关于免费资源的建议,我可以在那里学习更多关于编码的知识,以便将来我可以自己解决这个问题?@Fred,我想不出来。但无论如何,您必须查看文件中的实际字节。有几个免费的专用十六进制编辑器,可以帮助那里。有些编辑器也可以显示为十六进制。简单的命令行工具(如Mac或Unix上的
od
)也可以。您还需要对ASCII、UTF8和UTF16之间的差异有一些基本的了解,并且可能想知道BOM标记是什么。这足以解决典型的编码问题。
{
"item1": "I love jquery4u",
"item2": "You love jQuery4u",
"item3": "We love jQuery4u"
}
f <- file("testfile2.json", "rb")
bytes <- readBin(f, integer(), n = 500, size = 1)
close(f)
bytes
 [1] 123  10  34 105 116 101 109  49  34  58  32  34  73  32 108 111 118 101
[19]  32 106 113 117 101 114 121  52 117  34  44  10  34 105 116 101 109  50
[37]  34  58  32  34  89 111 117  32 108 111 118 101  32 106  81 117 101 114
[55] 121  52 117  34  44  10  34 105 116 101 109  51  34  58  32  34  87 101
[73]  32 108 111 118 101  32 106  81 117 101 114 121  52 117  34  10 125  10