用于将文本分成列的C#代码

时间:2014-01-26 12:01:12

标签: c# multiple-columns divide

我想用c#代码用“”(空格字符)分隔txt数据。数据见下文。我希望有列和单独到达所有列。例如,复制第3行,第4行和第5行的第3列和第4列。尝试了很多代码但没有工作。 我搜索了网络,我无法运行我找到的代码。 我怎么能这样做?

text.txt文件中的数据

1
41个
973 3.93E-03 9.99E-02 2.00E + 01 3.90E-01 0.00E + 00 0.00E + 00
975 7.85E-03 9.97E-02 2.00E + 01 3.90E-01 0.00E + 00 0.00E + 00
977 1.18E-02 9.93E-02 2.00E + 01 3.90E-01 0.00E + 00 0.00E + 00
979 1.56E-02 9.88E-02 2.00E + 01 3.89E-01 0.00E + 00 0.00E + 00
981 1.95E-02 9.81E-02 2.00E + 01 3.88E-01 0.00E + 00 0.00E + 00
983 2.33E-02 9.72E-02 2.00E + 01 3.87E-01 0.00E + 00 0.00E + 00

2 个答案:

答案 0 :(得分:0)

尝试:

var fileContent = File.ReadAllLines("data.txt");
var separated = fileContent.Select(line => line.Split(' ').ToArray();

最终会得到值(列)的数组(行)。要访问它们,请使用:

var row4Col5 = separated[3][4];

并不是说您可能想要进行一些边界检查,因为您的数据文件的某些行不包含所有列。

答案 1 :(得分:0)

您可以轻松地将整个文本文件读入字符串数组:

string[] content = File.ReadAllLines("{path to your file");

然后跳过在这种情况下不相关的前两行,并将每一行划分为一个值数组:

string[][] array = content.Skip(2).Select(line => line.Split(' ')).ToArray();