我有一个包含Number,Name,LastName的文本文件,如下所示;
11, Ali, Guner
32, Ali, ikinci
39, Metin, Tekin
我需要将它分成一个类的3个不同部分。我怎样才能做到这一点? 我的创建代码是:
string[] lines = { "11, Ali, Guner", "32, Ali, ikinci", "39, Metin, Tekin" };
System.IO.File.WriteAllLines(@"C:\Users\Public\TestFolder\WriteLines.txt", lines);
我想在一个名为person的类中拥有所有这些信息。我将创建一个对象,并能够调用_person1.name
答案 0 :(得分:1)
您可以使用File.ReadLines
+ String.Split
:
IEnumerable<string[]> allLineFields = File.ReadLines(path)
.Select(l => l.Split(','));
如果您想要具有正确类型的可读属性,则应使用自定义类:
IEnumerable<User> allPeople = File.ReadLines(path)
.Select(l => l.Split(','))
.Where(arr => arr.Length == 3)
.Select(arr => new User
{
Age = int.Parse(arr[0]), // use int.TryParse to check if it's valid
FirstName = arr[1],
LastName = arr[2]
});
这样的课程User
:
public class User
{
public object FirstName { get; set; }
public object LastName { get; set; }
public int Age { get; set; }
}