我有CSV文件,如:
Head1; Head2; Head3; Head4;
test1; word1; word2; word3;
test2; word1, word2; word3;
test3; word1; word2; word3;
我从textBox1.Text中搜索“test2”
Private void button1_Click(object sender, RoutedEventArgs e)
{
string NS = textBox1.Text;
bool found = File
.ReadLines(@"test.csv")
.Any(line => line.Contains(NS));
if (found)
MessageBox.Show("Test found!");
但是,我不知道如何从行中创建单个变量,其中找到“test2”。 类似的东西:
First variable: head2 = word1
Second variable: head3 = word2
etc.
我正在使用Visual Studio 2010 Express。
答案 0 :(得分:-1)
你可以试试这个。
string NS = textBox1.Text;
var foundRecord = File
.ReadLines(@"test.csv")
.Where(line => line.Contains(NS)).FirstOrDefault();
if (foundRecord != null)
{
var cols = foundRecord.Split(';'); //split by (;)
var firstVar = cols[0]; //capture column in variable
var secondVar = cols[1];
var thirdVar = cols[2];
}
答案 1 :(得分:-2)
小心地,你有一个模型,这是一个类,代表你的csv然后你喂它:
public class MyCsvStronglyTypeRow
{
public Head1{get; set;}
public Head2{get; set;}
public Head3{get; set;}
public Head4{get; set;}
}
要提供此模型并以List<MyCsvStronglyTypedRow>
结尾,您应该阅读并解析csv的每一行。
有一个工具可以帮助你在阅读/解析过程中调用CsvHelper