Json.NET での予期しない文字解析エラー
Json.NET を使用する場合、「解析中に予期しない文字が発生しました」というエラーが発生する場合があります。価値。"このエラーは通常、Json.NET が無効または不正な形式の JSON を逆シリアル化しようとしたときに発生します。
エラーの原因
指定されたケースでは、指定された JSON ファイル パスが割り当てられます。 tmpfile 文字列に。ただし、DeserializeObject メソッドは、ファイル パスではなく、有効な JSON 文字列を引数として必要とします。その結果、Json.NET がファイル パスを JSON として解析しようとすると、エラーがスローされます。
解決策
このエラーを解決するには、 JSON ファイルの内容を文字列に読み取り、DeserializeObject を使用して文字列を逆シリアル化するコード。修正されたコードは次のとおりです。
string json = File.ReadAllText(tmpfile); ViewerStatsFormat current = JsonConvert.DeserializeObject<ViewerStatsFormat>(json);
ファイルの内容を json 文字列にロードすると、逆シリアル化する必要がある有効な JSON データを Json.NET に提供できます。
以上がファイル パスを逆シリアル化するときに Json.NET が「予期しない文字」エラーをスローするのはなぜですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。