Python无法打开JSON文件,给出JSONDecodeError

时间:2020-04-23 09:01:54

标签: python json powershell

我想在项目中使用Python打开JSON文件,但始终出现以下错误:

json.decoder.JSONDecodeError: Expecting value: line 1 column 1 (char 0)

这是代码:

import json
with open("../data.txt") as json_file:
    data = json.load(json_file)

我有一个非常简单的文本文件,其中包含JSON格式的数据。这是data.txt文件:

{
    "data":  [
                 {
                     "day":  "22/04/2020 15:35",
                     "viewcount":  "1"
                 },
                 {
                     "day":  "22/04/2020 20:51",
                     "viewcount":  "2"
                 }
             ]
}

2 个答案:

答案 0 :(得分:2)

我已经尝试了您的源代码和可见的JSON数据,它运行起来没有任何问题。

我建议以二进制形式检查文件的内容,例如通过使用诸如hexdump之类的实用工具来查看其开始过程:

$ hexdump data.txt 
0000000 0a7b 2020 2020 6422 7461 2261 203a 5b20                                                                                                                                                
0000010 200a 2020 2020 2020 2020 2020 2020 2020                                                                                                                                                
0000020 2020 0a7b 2020 2020 2020 2020 2020 2020
...

或使用file实用程序检查编码,如以下文章所述:https://unix.stackexchange.com/questions/11602/how-can-i-test-the-encoding-of-a-text-file-is-it-valid-and-what-is-it

答案 1 :(得分:1)

python代码不是问题。 该文件未以UTF-8编码保存,这就是问题所在。