数组仅存储最后一个值

时间:2019-09-23 21:17:11

标签: c#

我不仅对C#相当陌生,而且对一般编程还是很新的,我遇到了这个问题,我的数组仅存储最后一行的值。如果我使用foreach进行while循环,则可以看到它遍历了所有值,但是并没有正确存储它们。我在任何地方都找不到解决方案,这就是为什么我来这里。 我只想打印出所有文本(能量,零食...)

我的StreamReader文本文件看起来像这样

1 milk 220 2 energy 300 3 snacks 200 4 cola 350

这是我的错误代码

        public struct adatok
        {
            public static int id, price;
            public static string name="";
        }
        static void Main(string[] args)
        {
            StreamReader kr = new StreamReader("termekek.txt", Encoding.Default);
            adatok[] adat = new adatok[1000];

            while (!kr.EndOfStream)
            {
                string[] sorok = kr.ReadLine().Split();
                adatok.id = Convert.ToInt16(sorok[0]);
                adatok.name = sorok[1];
                adatok.price = Convert.ToInt16(sorok[2]);

            }
            kr.Close();
            for (int i = 0; i < adatok.name.Length; i++)
            {
                Console.WriteLine(adatok.name[i]);
                Console.ReadKey();
            }
}

如果有人不仅指出我做错了什么,而且实际上也做了解释,我会很高兴<3 预先感谢!

0 个答案:

没有答案