【发布时间】:2018-05-04 18:00:38
【问题描述】:
我有一个大小为 109 Mgb 的有效 JSON 文件,格式如下。
[{"sensorType":"Radarcape","sensorLatitude":{"double":51.758894},"sensorLongitude":{"double":-1.256654},"sensorAltitude":{"double":200.0},"timeAtServer":1.429617600000027E9,"timeAtSensor":null,"timestamp":{"double":9.68628281E8},"rawMessage":"8d4008f999059a90c09719d7b430","sensorSerialNumber":13020235,"RSSIPacket":{"double":52.0},"RSSIPreamble":null,"SNR":null,"confidence":null}
,{"sensorType":"Radarcape","sensorLatitude":{"double":51.758894},"sensorLongitude":{"double":-1.256654},"sensorAltitude":{"double":200.0},"timeAtServer":1.429617600001544E9,"timeAtSensor":null,"timestamp":{"double":9.74843812E8},"rawMessage":"8f406a9a5913d2d51fbe8ab14fdf","sensorSerialNumber":13020235,"RSSIPacket":{"double":72.0},"RSSIPreamble":null,"SNR":null,"confidence":null}]
读取JSON文件的简单代码:
import json
with open ("jsonfile.txt",'r') as f:
j=json.load(f)
我正在尝试解析它以将其转换为 SQLite 格式。但是,每次我收到以下消息错误。
Traceback (most recent call last):
File "C:/Users/PycharmProjects/jsontosqlite/test.py", line 5, in <module>
a=json.loads("newfile.json")
File "C:\Python27\lib\json\__init__.py", line 339, in loads
return _default_decoder.decode(s)
File "C:\Python27\lib\json\decoder.py", line 364, in decode
obj, end = self.raw_decode(s, idx=_w(s, 0).end())
File "C:\Python27\lib\json\decoder.py", line 382, in raw_decode
raise ValueError("No JSON object could be decoded")
ValueError: No JSON object could be decoded
【问题讨论】:
-
json.loads应该传递一个文件对象而不是文件名。with open('newfile.json') as f: json.loads(f)