我正在while循环中创建一个类的实例 - 我需要while循环来获取我需要创建实例的输入参数(我必须从extern文件中读取它)。但后来我想从循环外部访问该实例。有可能吗?
public static <class> leseProjektDatei()
{
while ((zeile = datei.ReadLine()) != null)
{
Debug.WriteLine(zeile);
string id, wetterdatei, fruchtfolge, bodenprofil, grundwasser;
id = zeile.Substring(0, 5);
wetterdatei = zeile.Substring(7, 14);
fruchtfolge = zeile.Substring(22, 14);
bodenprofil = zeile.Substring(37, 14);
<class> projekt = new <class>(id, wetterdatei, fruchtfolge, bodenprofil);
}
return <class>
}
答案 0 :(得分:0)
你无法在循环之外检索它,尝试将其声明出循环,然后你就可以访问它了。
public static <class> leseProjektDatei()
{
<class> projekt;
while ((zeile = datei.ReadLine()) != null)
{
Debug.WriteLine(zeile);
string id, wetterdatei, fruchtfolge, bodenprofil, grundwasser;
id = zeile.Substring(0, 5);
wetterdatei = zeile.Substring(7, 14);
fruchtfolge = zeile.Substring(22, 14);
bodenprofil = zeile.Substring(37, 14);
projekt = new <class>(id, wetterdatei, fruchtfolge, bodenprofil);
}
return projekt;
}
答案 1 :(得分:0)
好像你需要List
YourClass
个public static IEnumerable<YourClass> leseProjektDatei()
{
var list = new List<YourClass>();
while ((zeile = datei.ReadLine()) != null)
{
Debug.WriteLine(zeile);
string id, wetterdatei, fruchtfolge, bodenprofil, grundwasser;
id = zeile.Substring(0, 5);
wetterdatei = zeile.Substring(7, 14);
fruchtfolge = zeile.Substring(22, 14);
bodenprofil = zeile.Substring(37, 14);
list.Add(new YourClass(id, wetterdatei, fruchtfolge, bodenprofil));
}
return list;
}
个对象,以下代码应该有效:
{{1}}
答案 2 :(得分:0)
使用List<class>
并在while循环中将新创建的class
实例添加到其中。之后,每个创建的类都被存储并可以访问?
答案 3 :(得分:0)
是这样的:
public class Project{
public string id{get;set;}
public string wetterdatei{get;set;}
public string fruchtfolge {get;set;}
public string bodenprofil {get;set;}
}
public static Project leseProjektDatei(){
Project projekt = new Project();
while ((zeile = datei.ReadLine()) != null)
{
projekt.id = zeile.Substring(0, 5);
projekt.wetterdatei = zeile.Substring(7, 14);
projekt.fruchtfolge = zeile.Substring(22, 14);
projekt.bodenprofil = zeile.Substring(37, 14);
}
return projekt;
}
无论如何都要为课程命名。
答案 4 :(得分:0)
不,你不能在while循环之外检索对象。解决此问题的一种方法是将对象添加到循环外部声明的数组中,并在循环期间返回该数组的值。这假设您希望在while循环的每次迭代中创建一个新对象。但由于你的实施,目前还不清楚。