C# 读取JSON时出现意外结束。路径'';,第1行,位置1

C# 读取JSON时出现意外结束。路径'';,第1行,位置1,c#,json,json.net,C#,Json,Json.net,我正在制作一个带有配置系统的Minecraft帐户检查器。(注意,检查程序是用C#编写的,我在配置系统中使用Newtonsoft.json)。 所以,我列了一个清单: List<string> config = File.ReadAllLines("config.json").ToList(); config.json文件非常简单: { "threads": 200, "proxiesType": "SOCKS5" } 但当我运行该项目时,我会出现以下错误: Newt

我正在制作一个带有配置系统的Minecraft帐户检查器。(注意,检查程序是用C#编写的,我在配置系统中使用Newtonsoft.json)。 所以,我列了一个清单:

List<string> config = File.ReadAllLines("config.json").ToList();
config.json文件非常简单:

{
   "threads": 200,
   "proxiesType": "SOCKS5"
}
但当我运行该项目时,我会出现以下错误:

Newtonsoft.Json.JsonSerializationException:'读取Json时意外结束。路径“”,第1行,位置1。“


我只是需要帮助,因为我搜索了,但没有人解决这个问题。

我不知道你为什么要这样做。没有理由使用
Parallel.ForEach
解析JSON

您现在正在做的是将JSON文件的每一行拉入列表,然后尝试解析每一行

因此,它尝试解析第1行,即
{
{
不是有效的JSON对象。解析失败


使用
File.ReadAllText
将整个文件读入单个字符串,然后解析该字符串。不需要任何形式的循环。

使用JSON.NET处理JSON文件有两种方法:

  • 按照Daniel的建议使用
    File.ReadAllText()

  • 问题标题中的后期修复
    [SOLVED]
    不正确。请单击复选标记(✓) 在下面的一个答案上,将其标记为答案。如果您自己解决了问题,请将解决方案发布为下面的答案,然后单击复选标记(✓).
    {
       "threads": 200,
       "proxiesType": "SOCKS5"
    }
    
    string json = File.ReadAllText("config.json");
    Config config = JsonConvert.DeserializeObject<Config>(json);
    using (StreamReader file = File.OpenText("config.json"))
    {
        JsonSerializer serializer = new JsonSerializer();
        Config config = (Config)serializer.Deserialize(file, typeof(Config));
    }