[解決済み] 値のパース時に予期せぬ文字が発生した
2022-01-29 01:57:05
質問
現在、いくつかの問題があります。私はJson.NETでC#を使用しています。問題は、私がいつも得ることです。
{"Unexpected character encountered while parsing value: e. Path ''、 line 0, position 0."}.
で、私がやっているJson.NETの使い方は、次のようなものです。保存すべきクラスがあります。クラスは以下のような感じです。
public class stats
{
public string time { get; set; }
public string value { get; set; }
}
public class ViewerStatsFormat
{
public List<stats> viewerstats { get; set; }
public String version { get; set; }
public ViewerStatsFormat(bool chk)
{
this.viewerstats = new List<stats>();
}
}
このクラスのオブジェクトが1つ充填され、保存されます。
File.WriteAllText(tmpfile, JsonConvert.SerializeObject(current), Encoding.UTF8);
保存部分は問題なく動作し、ファイルが存在し、充填されます。その後、ファイルが読み込まれてクラスに戻されます。
try
{
ViewerStatsFormat current = JsonConvert.DeserializeObject<ViewerStatsFormat>(tmpfile);
//otherstuff
}
catch(Exception ex)
{
//error loging stuff
}
さて、current=の行で、例外が発生します。
{"Unexpected character encountered while parsing value: e. Path ''、 line 0, position 0."}.
なぜこれが来るのかわかりません。JSONファイルは以下のようなものです -> Click me I am the JSON リンク
どなたか思い当たる方はいらっしゃいますか?
解決方法は?
にJSONを渡していない可能性があります。
DeserializeObject
.
からのように見えます。
File.WriteAllText(tmpfile,...
そのタイプの
tmpfile
は
string
は、ファイルへのパスを含む。
JsonConvert.DeserializeObject
はファイルパスではなく JSON 値を取るので、次のような変換は失敗します。
@"c:\temp\fooo"
- これは明らかにJSONではありません。
関連
-
[解決済み】「未割り当てのローカル変数を使用」とはどういう意味ですか?
-
[解決済み】スクリプトクラスが見つからないので、スクリプトコンポーネントを追加できない?
-
[解決済み】C#で四捨五入する方法
-
[解決済み] 'SubSonic.Schema .DatabaseColumn' 型のオブジェクトをシリアライズする際に、循環参照が検出されました。
-
[解決済み】プロジェクトビルド時のエラー。エディタでスクリプトにコンパイルエラーがあるため、Playerのビルドにエラーが発生する
-
[解決済み】クロススレッド操作が有効でない。作成されたスレッド以外のスレッドからアクセスされたコントロール
-
[解決済み】HRESULTからの例外:0x800A03ECエラー
-
[解決済み] なぜGoogleはJSONレスポンスにwhile(1);を前置するのでしょうか?
-
[解決済み] C#でenumからint値を取得する
-
[解決済み] UnixツールでJSONをパースする
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン
おすすめ
-
[解決済み] [Solved] 1つ以上のエンティティで検証に失敗しました。詳細は'EntityValidationErrors'プロパティを参照してください [重複]。
-
[解決済み】エラー。「戻り値を変更できません」 C#
-
[解決済み] 保護レベルによりアクセス不能になりました。
-
解決済み] Critical error detected c0000374 - C++ dll returns pointer off allocated memory to C# [解決済み] Critical error detected c0000374 - C++ dll returns pointer off allocated memory to C#.
-
[解決済み】取り消せないメンバはメソッドのように使えない?
-
[解決済み】HRESULTからの例外:0x800A03ECエラー
-
[解決済み】IntPtrとは一体何なのか?
-
[解決済み】Unityでゲームオブジェクトのすべての子をループスルーして破壊する方法?
-
[解決済み】データが存在しないのに読み込もうとする試みが無効である
-
[解決済み] JSON.NETを使用して、文字列が有効なJSONであることを確認する方法