从单行读取文件包含多行

时间:2013-10-26 13:34:30

标签: c# text

我想用这段代码从单行读取:

            var data = File
        .ReadLines("itemdata.txt")
        .SelectMany(x => x.Split('\t'))
        .Select(x => x.Split('='))
        .Where(x => x.Length > 1)
        .ToDictionary(x => x[0].Trim(), x => x[1]);

来自包含多行具有相同文本的文本文件。示例:etcitem = armor位于第一行,etcitem =武器位于第二行,并且只想从单个行读取。重生应该来自第一行:textsearch.Text = data["etcitem"];如何处理? 谢谢!

1 个答案:

答案 0 :(得分:0)

您可以使用.Take()选择第一行,如下所示:

var data = File
    .ReadLines("itemdata.txt")
    .Where(x => x.Contains("5624"))
    .Take(1)
    .SelectMany(x => x.Split('\t'))
    .Select(x => x.Split('='))
    .Where(x => x.Length > 1)
    .ToDictionary(x => x[0].Trim(), x => x[1]);

如果您需要跳过任何行,也可以使用.Skip()。