如何从文本文件中读取并存储到c#中的数组列表?

时间:2015-08-21 07:54:24

标签: c# text arraylist streamreader

我正在尝试读取文本文件并将其数据存储到数组列表中。它没有任何错误。我的文本文件里面是这样的。

277.18
311.13
349.23
277.18
311.13
349.23
277.18
311.13
349.23 

但在控制台输出中我可以看到这么多数据。

277.18
311.13
349.23
349.23
**329.63
329.63
293.66
293.66
261.63
293.66
329.63
349.23
392**
277.18
311.13
349.23
277.18
311.13
349.23
277.18
311.13
349.23

我的文本文件中也没有粗体数字。 这是我的代码。怎么解决这个?可以有人帮助我......请...

        OpenFileDialog txtopen = new OpenFileDialog();
        if (txtopen.ShowDialog() == DialogResult.OK)
        {
            string FileName = txtopen.FileName;
            string line;
            System.IO.StreamReader file = new System.IO.StreamReader(FileName.ToString());
            while ((line = file.ReadLine()) != null)
            {
                list.Add(double.Parse(line));
            }
            //To print the arraylist
            foreach (double s in list)
            {
                Console.WriteLine(s);
            }
        }

2 个答案:

答案 0 :(得分:2)

我认为您的__desc_chg() { echo "$1" num=`echo $1 | awk '{print $2}'` p4 opened -c $num 2>&1 | awk '{print " "$1,$2,$3,$6}' echo } __p4pending() { __desc_chg "Change default by $P4USER@$P4CLIENT *pending*" p4 changes -u $P4USER -c $P4CLIENT -s pending | sort -k2 -n | while read -r l; do __desc_chg "$l"; done } alias p4pending='__p4pending' 已经包含了一些数据,您应该在向其添加新文件数据之前将其清除。

list

其他明智的事情似乎在这里很好。

答案 1 :(得分:1)

尝试使用 Linq ,它不会向现有列表添加任何内容

if (txtopen.ShowDialog() == DialogResult.OK) {
  var result = File
    .ReadLines(txtopen.FileName)
    .Select(item => Double.Parse(item, CultureInfo.InvariantCulture));

  // if you need List<Double> from read values:
  //   List<Double> data = result.ToList();
  // To append existing list:
  //   list.AddRange(result);

  Console.Write(String.Join(Environment.NewLine, result));
}