我試圖從一個以.json文件解析的數據解析時,爲什麼我得到一個「錯誤轉換值」異常,並把它們稱爲「跟蹤」一類的列表與Json.Net
這個類看起來是這樣的:
public class Track
{
public string Artist { get; set; }
public string Album { get; set; }
public string Title { get; set; }
public int TrackNumber { get; set; }
public string Filepath { get; set; }
public int SongLength { get; set; }
public Color RGB { get; set; }
}
我的代碼如下所示:
private void Load()
{
using (StreamReader r = new StreamReader("C:\Users\Swagger\Desktop\Test\MusicCacheP.json"))
{
string json = r.ReadToEnd();
List<Track> items = JsonConvert.DeserializeObject<List<Track>>(json);
MSG(items.Count.ToString());
//MSG is just a function which gives me a messagebox. I'm too lazy to write the full messagebox.show.. ;)
}
}
而且我不知道這事,但這裏的一些JSON代碼:
{"Artist":"Dirty South","Album":"Until the End","Title":"Until the End (Michael Brun Mix) [feat. Joe Gil]","TrackNumber":0,"Filepath":"\\\\DAVIDIOSO\\Users\\hasht_000\\Music\\Dirty South - Until the End (Michael Brun Mix) [feat. Joe Gil].mp3","SongLength":21,"RGB":""}
我還沒有真正使用Json來了解它是如何工作的。我是那種喜歡邊幹邊學的人。但是,如果你有一些好的網頁,以瞭解在C#中的JSON,我很樂意閱讀:)
編輯:
我要瘋了!我不明白爲什麼我得到這個例外..
我只收到文件路徑的例外。
而瘋狂的事情是,我有另一個文件裏面的所有文件路徑,我也讀了json。這工作很好。
「貧民窟」解決方案將讀取該文件,其中只包含文件路徑並使用它來填充我的Track列表?但它會很高興得到這個整理出來.. 任何幫助真的很感激! :)
謝謝你。不幸的是,它並沒有解決我的問題:(我仍然得到相同的例外。「轉換價值錯誤」\\ DAVIDIOSO \ Users \ hasht_000 \音樂\骯髒的南 - 直到結束(邁克爾布倫混合)[壯舉喬吉爾] .mp3「鍵入'MediaplayerV2WPF.Track'。Path'[0]',line 1,position 109.」 – Tokfrans
'MediaplayerV2WPF.Track'在錯誤中顯示與它無關JSON反序列化,但存儲在'Filepath'中的實際值?我可能在這裏沒有標記,但它似乎是你的JSON反序列化就好了,問題出現在你試圖加載媒體播放器的軌道與文件路徑提供JSON。一些轉義序列可能是? – JuStDaN
是的,這是有道理的。但是,我如何才能將json信息導入課堂?我不是這樣做「教科書」的方式嗎? – Tokfrans