JSON 値の解析中に予期しない文字が検出されました
C# で Json.NET を使用すると、次のエラーが発生することがあります。解析値: e. パス ''、行 0、位置 0。これは、解析中の JSON に問題があることを示しています。
この特定のケースでは、問題は DeserializeObject メソッドにあります。入力として JSON 値が必要ですが、ファイル パスを渡しています。 tmpfile 変数には、JSON データ自体ではなく、JSON ファイルへのパスが含まれています。
この問題を解決するには、ファイルから JSON データを読み取り、それを DeserializeObject に渡します。変更されたコード スニペットは次のとおりです。
string json = File.ReadAllText(tmpfile); ViewerStatsFormat current = JsonConvert.DeserializeObject<ViewerStatsFormat>(json);
最初に JSON を文字列にロードすると、DeserializeObject が有効な JSON 値を確実に受け取り、「予期しない文字が検出されました」エラーが解決されます。
以上がファイル パスを指定すると、「JsonConvert.DeserializeObject」が「予期しない文字が検出されました」というメッセージをスローするのはなぜですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。