【发布时间】:2021-01-22 16:44:37
【问题描述】:
在 Xamarin Android 应用程序中,我使用此函数从存储的 json 文件中读取数据
public async Task<Caselist> readData()
{
var file = Path.Combine(System.Environment.GetFolderPath(System.Environment.SpecialFolder.Personal), "data_covid_dashboard.json");
try
{
System.Console.Write("Reading data...");
using (StreamReader fileContent = File.OpenText(file))
{
JsonTextReader reader = new JsonTextReader(fileContent);
JObject jo = (JObject)JToken.ReadFrom(reader);
return jo.ToObject<Caselist>();
}
}
catch (Exception)
{
throw;
}
}
但是,应用程序似乎卡在using (StreamReader fileContent = File.OpenText(file))
所需文件约为 ~130MB。
您好,
乔纳森
【问题讨论】:
-
如果您只是要转换为
Caselist,那么您应该先跳过将其加载到JObject。试试var ser = new JsonSerializer(); return ser.Deserialize<Caselist>(reader);
标签: c# xamarin xamarin.android json.net