C#读取TXT文本某一列数据的问题

C#读取TXT文本某一列数据的问题如图的TXT文本,除第一行之外第一二三列分别是XYZ坐标,我需要从第二行开始,将第一列的数据读入数组X[ ]中,将第二列保存在Y[ ]中,求他们之间距离最小值,麻烦大神告诉下怎么将数据读入到两个数组中来,其它部分计算量很大,当然能一起说下更好了,会用C写无奈不会用C#写,不胜感激!

using System.Collections.Generic;
using System.IO;

// 定义一个点
public struct Point
{
    public double X;
    public double Y;
}

class Program
{
  static void Main(string[] args)
  {
     // 读入所有行
     string[] lines = File.ReadAllLines("a.txt");
     // 点列表集合
     List<Point> points = new List<Point>();
     // 让过第一行,从第二行开始处理
     for (int i = 1; i < lines.Length; i++)
     {
        string line = lines[i];
        // 拆分行
        string[] v = line.Split(new char[] {' '}, StringSplitOptions.RemoveEmptyEntries);
        Point p;
        // 获取Y(第一列)        
        p.X = double.Parse(v[0]);
        // 获取Y(第二列)        
        p.Y = double.Parse(v[1]);
        points.Add(p);
     }
     // 至此,所有的数据点都在列表集合points中了……      
  }
}

1)a.txt是的数据文件,放置bin\Debug或bin\Release文件中

2)读入的数据保存在列表集合中,集合可以容纳数据文件中任意多行数据。

追问

虽然我已经解决了,但是还得很谢谢!

温馨提示:答案为网友推荐,仅供参考
第1个回答  2019-10-30
您好,我也遇到了和你一样的问题,请问你是怎么解决的呢
相似回答