C# 遍历类的列表
我已经从一个文本文件中列出了一个团队列表。我只是无法反复阅读C# 遍历类的列表,c#,.net,json,C#,.net,Json,我已经从一个文本文件中列出了一个团队列表。我只是无法反复阅读 using(StreamReader sr = new StreamReader("TXT1.txt")) { using(JsonReader jr = new JsonTextReader(sr)) { JsonSerializer js = new JsonSerializer(); List<Teams> leagueTeams = js.Deserialize<
using(StreamReader sr = new StreamReader("TXT1.txt"))
{
using(JsonReader jr = new JsonTextReader(sr))
{
JsonSerializer js = new JsonSerializer();
List<Teams> leagueTeams = js.Deserialize<List<Teams>>(jr);
}
}
但是联盟球队的说法有一个错误
在这种情况下,它并不存在
整段代码:
class Teams
{
public string name;
public int GoalDiff;
public int POints;
}
class Program
{
static void Main(string[] args)
{
using(StreamReader sr = new StreamReader("TXT1.txt"))
{
using(JsonReader jr = new JsonTextReader(sr))
{
JsonSerializer js = new JsonSerializer();
List<Teams> leagueTeams = js.Deserialize<List<Teams>>(jr);
}
}
foreach (var item in LeagueTeams)
{
}
}
}
您试图访问其声明范围之外的联盟球队,这就是为什么会出现此错误。因此,您需要在使用声明之前移动列表联盟团队声明:
List<Teams> leagueTeams = new List<Teams>();
using(StreamReader sr = new StreamReader("TXT1.txt"))
{
....
....
leagueTeams = js.Deserialize<List<Teams>>(jr);
您试图访问其声明范围之外的联盟球队,这就是为什么会出现此错误。因此,您需要在使用声明之前移动列表联盟团队声明:
List<Teams> leagueTeams = new List<Teams>();
using(StreamReader sr = new StreamReader("TXT1.txt"))
{
....
....
leagueTeams = js.Deserialize<List<Teams>>(jr);
您可能正在尝试迭代LeagueTeams类,您可能想做的是迭代刚刚通过反序列化解析文件创建的列表
class Program
{
static void Main(string[] args)
{
List<Teams> leagueTeams = new List<Teams>();
using(StreamReader sr = new StreamReader("TXT1.txt"))
{
using(JsonReader jr = new JsonTextReader(sr))
{
JsonSerializer js = new JsonSerializer();
leagueTeams = js.Deserialize<List<Teams>>(jr);
}
}
foreach (var team in leagueTeams)
{
// access each team by 'team' variable
}
// another way using LINQ
leagueTeams.ForEach(team =>
{
// access each team by 'team' variable
});
}
}
您可能正在尝试迭代LeagueTeams类,您可能想做的是迭代刚刚通过反序列化解析文件创建的列表
class Program
{
static void Main(string[] args)
{
List<Teams> leagueTeams = new List<Teams>();
using(StreamReader sr = new StreamReader("TXT1.txt"))
{
using(JsonReader jr = new JsonTextReader(sr))
{
JsonSerializer js = new JsonSerializer();
leagueTeams = js.Deserialize<List<Teams>>(jr);
}
}
foreach (var team in leagueTeams)
{
// access each team by 'team' variable
}
// another way using LINQ
leagueTeams.ForEach(team =>
{
// access each team by 'team' variable
});
}
}
在首次使用前声明列出leagueTeams。leagueTeams在foreach!=没有大写首字母的leagueTeams。而且,我们必须有一个主副本。在第一次使用前声明列出leagueTeams。foreach中的leagueTeams!=没有大写首字母的联赛球队。而且,我们必须有一个大师级的傻瓜。