我有一个名为file.csv的 csv 文件,其中包含如下数据
Id Name Address Contact
1 Peter USA 12345
2 Anna UK 45678
3 John USA 9876
Run Code Online (Sandbox Code Playgroud)
我想使用 c#搜索Name并从Address返回值。例如。如果用户搜索 Peter,则应返回 USA。
任何人都可以给我一些想法吗?
我建议你创建一些类来保存这些数据:
public class Person
{
public int Id { get; set; }
public string Name { get; set; }
public string Address { get; set; }
public string Contact { get; set; }
}
Run Code Online (Sandbox Code Playgroud)
然后从您的文件中读取人员:
var person = File.ReadLines("file.csv").Skip(1)
.Select(ParsePersonFromLine)
.Where(p => p.Name == "Peter")
.FirstOrDefault();
if (person != null)
// use person.Address
Run Code Online (Sandbox Code Playgroud)
人的解析可以是这样的:
private static Person ParsePersonFromLine(string line)
{
string[] parts = line.Split(',');
return new Person {
Id = Int32.Parse(parts[0]),
Name = parts[1],
Address = parts[2],
Contact = parts[3]
};
}
Run Code Online (Sandbox Code Playgroud)