当我向其中插入新对象时,列表会覆盖自身

时间:2017-01-23 20:00:29

标签: c# list

首先,我初始化名为myData的List<Set>,其中存储了从NMEA文档中获取的数据。之后,我初始化我的缓冲区,它存储数据直到触发发生。

当我向myData添加一个新的Set时,所有旧的现有数据都会被覆盖,只有最新的数据和X副本留在myData中。

    myData = new List<Set>();
    buffer = new List<string>();
    try
    {
        using (StreamReader sr = new StreamReader(Path.Combine(Directory.GetCurrentDirectory(), "gps-koord.txt")))
        {
            string s;
            while ((s = sr.ReadLine()) != null)
            {

                if (!String.IsNullOrEmpty(s))
                {
                    if (s[0] == '$')
                    {
                        buffer.Add(s);
                        if (s.Contains("GPGGA"))
                        {
                            List<string> tmp = buffer.ToList();
                            myData.Add(new Set(tmp));
                            buffer = new List<string>();
                        }
                    }
                }
            }
        }
    }
    catch (Exception e)
    {
        Console.WriteLine(Directory.GetCurrentDirectory() + @"\" + "gps-koord.txt");
        Console.WriteLine("Error, file not found");
    }

0 个答案:

没有答案