C# 循环处理JSON中的长值并在C中写入控制台#
我在一个名为“Config.JSON”的文件中有一个类似这样的JSON文件:C# 循环处理JSON中的长值并在C中写入控制台#,c#,.net,json,C#,.net,Json,我在一个名为“Config.JSON”的文件中有一个类似这样的JSON文件: { "name": "Michael", "ids": [111111, 222222, 333333, 444444, 555555] } 我是这样反序列化的: Config config = JsonConvert.DeserializeObject<Config>(File.ReadAllText("Config.json")); 如何迭代ID并将其写入控制
{
"name": "Michael",
"ids": [111111, 222222, 333333, 444444, 555555]
}
我是这样反序列化的:
Config config = JsonConvert.DeserializeObject<Config>(File.ReadAllText("Config.json"));
如何迭代ID并将其写入控制台?我试过这个:
var ids = new List<long> { config.Ids};
foreach (long id in ids)
{
Console.WriteLine(id.ToString());
}
varids=newlist{config.ids};
foreach(id中的长id)
{
Console.WriteLine(id.ToString());
}
但我有一个错误:
无法将当前JSON数组(例如[1,2,3])反序列化为类型“System.Int64”,因为该类型需要一个JSON基元值(例如字符串、数字、布尔值、null)才能正确反序列化
我不知道如何反序列化和编写这个…我尝试过使用不同的值(uint64)进行实验,但出现了相同的错误
非常感谢
ids
是一个数组
将public long Ids{get;set;}
更改为public long[]Ids{get;set;}
并按如下方式打印它们:
foreach (long id in config.Ids)
{
Console.WriteLine(id.ToString());
}
ids
是一个数组
将public long Ids{get;set;}
更改为public long[]Ids{get;set;}
并按如下方式打印它们:
foreach (long id in config.Ids)
{
Console.WriteLine(id.ToString());
}
Json中的
ids
属性是一个数组(如方括号所示)。要正确地取消Json的序列化,您的模型类应该如下所示
公共类配置
{
[JsonProperty(“名称”)]
公共字符串名称{get;set;}
[JsonProperty(“ids”)]
公共IEnumerable ID{get;set;}
}
然后,如果要将所有值写入console
foreach(config.Ids中的变量id)
{
控制台写入线(id);
}
Json中的ids
属性是一个数组(如方括号所示)。要正确地取消Json的序列化,您的模型类应该如下所示
公共类配置
{
[JsonProperty(“名称”)]
公共字符串名称{get;set;}
[JsonProperty(“ids”)]
公共IEnumerable ID{get;set;}
}
然后,如果要将所有值写入console
foreach(config.Ids中的变量id)
{
控制台写入线(id);
}
ids
是一个数组,不应使用单个长值,public long[]ids
是一个数组,不应使用单个长值,public long[]ids