2

我的目标是读取包含坐标数(在第一行中提到)和 XY 值(双)的 txt 文件。例如:

2

4.454 3.24

1.23 4

到目前为止,我需要将这些坐标放入数组中(没有第一行),但我成功地阅读了文本,但不知道如何放入数组中。我的数组是一个 Point (double x,double y) C'tor 但我想学习如何放入普通数组。另一个问题是如何控制我要阅读的那一行?

代码到此为止

       using (StreamReader sr = File.OpenText(fileName)) 
        {
            int i = 0;
            string inputLine;
            int len = int.Parse(inputLine = sr.ReadLine());
            string[] readText = File.ReadAllLines(fileName);
            foreach (string line in File.ReadAllLines(fileName))
            {
                string[] parts = line.Split(' ');
                foreach (string part in parts)
                {
                    Console.WriteLine("{0}:{1}",i, part);    
                }
                i++;
            }
        }

谢谢大家!ps我的第一个问题,希望不要违反论坛的规则。

4

2 回答 2

2

像这样的东西?

var points = File.ReadLines("c:\filepath")
    .Skip(1) //Ignore the 1st line
    .Select(line => line.Split(' ')) //Chop the string into x & y
    .Select(split => new Point(double.Parse(split[0]), double.Parse(split[1])); //create a point from the array
于 2012-12-14T14:13:59.573 回答
0
var coordinates = File.ReadLines(fileName).Skip(1)
                    .Select(line => line.Split())
                    .Select(x=>new PointF(float.Parse(x[0]),float.Parse(x[1])))
                    .ToList();
于 2012-12-14T14:09:36.340 回答