0
私はリストを持っています。各要素はjsonファイルへのパスです。テキストファイルに書き込むために次のコードを使用しています。jsonファイルをテキストファイルに追加する
list=['C:/Users/JAYANTH/Desktop/datasets/580317556516483072/source-
tweet/580317556516483072.json',
'C:/Users/JAYANTH/Desktop/datasets/580317998147325952/source-
tweet/580317998147325952.json',
..........]
file=open("abc.txt","a")
for i in range(len(list))
with open(list[i]) as f:
u=json.load(f)
s=json.dumps(u)
file.write(s)
file.close()
このコードは、jsonファイルのデータをtxtファイルに追加します。次のコードを使用して、同じファイルからデータを読み取るしようとしているとき:
with open('abc.txt','r') as f:
for each in f:
print(json.load(file))
を私は次のエラーを取得しています:
Traceback (most recent call last):
File "C:\Users\JAYANTH\Desktop\proj\apr25.py", line 15, in <module>
print(json.load(file))
File "C:\Users\JAYANTH\Desktop\proj\lib\json\__init__.py", line 268, in
load
parse_constant=parse_constant, object_pairs_hook=object_pairs_hook,
**kw)
File "C:\Users\JAYANTH\Desktop\proj\lib\json\__init__.py", line 319, in
loads
return _default_decoder.decode(s)
File "C:\Users\JAYANTH\Desktop\proj\lib\json\decoder.py", line 339, in
decode
obj, end = self.raw_decode(s, idx=_w(s, 0).end())
File "C:\Users\JAYANTH\Desktop\proj\lib\json\decoder.py", line 357, in
raw_decode
raise JSONDecodeError("Expecting value", s, err.value) from None
json.decoder.JSONDecodeError: Expecting value: line 1 column 1 (char 0)
私もjson.loadsを使用してみましたが、エラーを取得しています
Traceback (most recent call last):
File "C:\Users\JAYANTH\Desktop\proj\apr25.py", line 15, in <module>
print(json.loads(file))
File "C:\Users\JAYANTH\Desktop\proj\lib\json\__init__.py", line 312, in
loads
s.__class__.__name__))
TypeError: the JSON object must be str, not 'TextIOWrapper'
どうすればこの問題を解決できますか?
あなたが読んだとき " abc.txt "、なぜあなたはforループを持っていますか?ただ印刷してください(json.load(f)) – Ashish
なぜあなたはこれをしたいですか? 1つの外部リストを作成し、個々のjsonオブジェクトをこの出力リストに追加することができます。この出力リスト自体は、単一の有効なjsonオブジェクトになります。それからファイルに書き出します。 – roganjosh