我有以下json文件格式。
{
"browser": "firefox",
"dateTime": "28_May_2014_03_35_PM"
}
{
"browser": "firefox",
"dateTime": "28_May_2014_03_36_PM"
}
根据要求我不能改变它的格式,但我必须阅读这个我知道我们可以提供[和]括号并将每个元素分开,但我不能这样做,我的源文件只有以上格式。
那我该怎么读这样的文件?
有没有办法读取此类文件并将整个文件内容转换为有效的json格式内容?
答案 0 :(得分:2)
你可以尝试这样的事情
<!DOCTYPE html>
<html lang="en" xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta charset="utf-8" />
<title></title>
</head>
<body>
<script>
debugger;
var input = '{ "browser": "firefox", "dateTime": "28_May_2014_03_35_PM" } { "browser": "firefox", "dateTime": "28_May_2014_03_36_PM" }';
input = input.replace('}', '},');
input = '[' + input + ']';
var _json = JSON.parse(input);
for (var i = 0; i < _json.length; i++)
alert(_json[i].browser);
</script>
</body>
</html>
但如果你的嵌套对象里面不起作用
答案 1 :(得分:2)
如果文件完全,那么您可以将其转换为有效的JSON并解析它。
var contents = JSON.parse("[" + fileContents.replace("}\n", "},\n", "g") + "]");
但是,不要这样做。如果生成了无效的JSON文件,请查找修复生成它的代码的方法。如果它是静态文件,请在继续之前修复它。要求很少一成不变。