1
當我嘗試解析大小爲200mb
的大文件json
時,出現問題。 我正在使用Newtonsoft.Json
。它給出了OutOfMemory
例外。內存不足用於JObject
這是我的代碼:
using (StreamReader sr=File.OpenText("path"))
{
JObject file= (JObject)JToken.ReadFrom(new JsonTextReader(sr));
}
我怎樣才能做到這一點? (最好使用JObject)
它似乎var property = jsonReader.TokenType.PropertyName;不起作用。它說'PropertyName不能用實例引用訪問;使用類型名稱代替' – Kosmog
我更新了答案並添加了一些示例代碼。使用JsonTextReader就像創建一個從頭開始的解析器(如果你的JSON結構很複雜,那麼工作量很大),但如果你對此感到滿意,它可以讓你避免內存問題。 –
謝謝。但是,我怎樣才能訪問該文件中的字段?對於較小的json文件,我會這樣做:我會創建一個JObject並遍歷它,並且我可以訪問像這個元素[「field_name」]這樣的元素,值爲()。我怎樣才能與讀者做到這一點? –
Kosmog