如何过滤从文本文件中读取的值

时间:2016-11-07 09:55:56

标签: c# visual-studio listview text-files

我想从C#中的文本文件中获取几个值。例如:

1.sex=male
1.name=barack
1.lastname=obama
1.age = 55

2.sex=female
2.name= kelly
2.lastname=clinton
2.age = 24

3.sex = male
3.firstname= mike
3.lastname= james
3.age= 19

我只想从textFile获得所有“姓名”,“姓氏”和年龄,而不是“性别”。我该如何过滤?我尝试过类似的东西,但它只显示1个值。

var list = new List<string>();

var text = File.ReadAllLines(@"C:\Users\Jal\Desktop\Test.text");
foreach (var s in text)
{              
    if (s.Contains("Name"))
    {                       
        if (s.Contains("Name"))
        {
            var desc = s.Substring(s.IndexOf("=") + 1);
            list.Add(desc);
            ListView.Items.Add(desc);                         
        }  
    }
}

我在Stack Overflow上找到了这个代码,但它没有得到我想要的所有值。

2 个答案:

答案 0 :(得分:1)

cy

同样,您可以添加其他属性。

答案 1 :(得分:0)

s.Contains(&#34; Name&#34;)在这种情况下永远不会成为现实,因为它区分大小写,并且文件中的字符串是&#34; name&# 34。

尝试使用s.Contains(&#34; name&#34;)

但是你最好还是使用正则表达式来做这件事。