4

这对您来说可能是一个非常简单和愚蠢的问题,但我还没有弄清楚:我正在尝试读取具有不同数据通道(或来源)的长文件。每个通道都有几个字段,例如它的名称、编号、日期、数据类型,然后是数据。我在编程方面很新,所以我的第一种方法(可能是错误的方法)是创建一个名为“Channel”的类,然后当我读取文件时(使用 StreamReader)我创建类 Channel 的新对象每个频道。会有未知数量的通道,我的问题是我不知道以后如何调用该数据。

public class Channel
{
    public string name;
    public int number= 0;
    //more labels
    //data...
}

在我的代码中,我写了这样的东西(在阅读循环内),每个新频道:

...
line=file.ReadLine()
myChannel Channel = new Channel();
myChannel.name=line.Substring(10,20)
myChannel.number=line.Substring(20,30)
...

我的问题是我以后如何调用该数据(存储在每个频道的列表中)?我应该给每个创建的对象一个不同的名称吗?

我试过谷歌它,但我找不到这个确切的问题。谢谢你。

4

2 回答 2

8

List正如您所提到的,您可以拥有一个Channel对象,这意味着您可以稍后引用它们。

类似的东西(在你的循环之外声明这个):

List<Channel> channels = new List<Channel>();

然后在您的循环中,您可以执行以下操作:

myChannel Channel = new Channel();
myChannel.name=line.Substring(10,20);
myChannel.number=line.Substring(20,30);

channels.Add(myChannel); //This is where we add it to the list
于 2013-05-07T12:11:48.837 回答
2

而且,很高兴注意到:

channels.Count; // gives you how many myChannel is in the list

Console.WriteLine("Name is: " + channels[0].name); // your data back
于 2013-05-07T12:45:25.683 回答