如何将外部文本数据加载到C#中
本文关键字:加载 数据 文本 外部 | 更新日期: 2023-09-27 17:57:44
我有一个名为my_date.txt
的文本文件,其中包含以下数据:
1 Adam
2 Steve
3 Lisa
4 Josh
.....
文本文件可能很长。我正试图将此文本文件中包含的数据加载到C#中的数组中,以便进行操作。在sas
中,我只使用输入。在VBA
中,我只是引用单元格,假设我在excel中制作。但是对于C#,我完全不知道。
#1简单适用于
可以使用File.ReadAllLines将文本文件的行放入字符串数组中。
string[] names = File.ReadAllLines("C:''my_date.txt");
然后解析数据以删除名称之前的1, 2, 3, etc
for (int i = 0; i < names.Length; i++)
{
names[i] = names[i].Split()[1];
}
#2 LINQ
使用简单的for循环会很好,但也可以使用LINQ:
string[] names = File.ReadAllLines("C:''my_date.txt")
.Select(str => str.Split()).Select(name => name[1]).ToArray();
如果不需要数字前缀,可以简单地使用不带Split()
的ReadAllLines
方法
在C#
中,可以使用File.ReadLines
方法和LINQ
:
var values = File
.ReadLines("filePath") // 1
.Select(x => x.Split()) // 2
.Select(x => new { Id = x[0], Name = string.Join(" ", x.Skip(1) }) // 3
.ToArray(); // 4
- 读取文件中的所有行
- 空白处每行
Split
- 为包含两个属性
Id
(数字)和Name
的每一行创建一个匿名对象,我使用string.Join
是因为您的名称可能包含空格。您可以使用自定义类而不是更合适的匿名类型 - 将结果转换为数组