我尝试使用 Linq 读取一个简单的 TXT 文件,但是,我的困难是。以 2 x 2 行读取文件,为此,我做了一个简单的函数,但是,我相信我可以读取 2 x 2 行分隔的 TXT ...
我阅读文本行的代码是:
private struct Test
{
public string Line1, Line2;
};
static List<Test> teste_func(string[] args)
{
List<Test> exemplo = new List<Test>();
var lines = File.ReadAllLines(args[0]).Where(x => x.StartsWith("1") || x.StartsWith("7")).ToArray();
for(int i=0;i<lines.Length;i++)
{
Test aux = new Test();
aux.Line1 = lines[i];
i+=1;
aux.Line2 = lines[i];
exemplo.Add(aux);
}
return exemplo;
}
在我创建这个函数之前,我尝试这样做:
var lines = File.ReadAllLines(args[0]). .Where(x=>x.StartsWith("1") || x.StartsWith("7")).Select(x =>
new Test
{
Line1 = x.Substring(0, 10),
Line2 = x.Substring(0, 10)
});
但是,很明显,该系统将逐行获取并为该行创建一个新结构......那么,我怎样才能使用 linq 获得 2 x 2 行?
--- Edit Maybe 可以创建一个新的 'linq' 函数,来实现 ???
Func<T> Get2Lines<T>(this Func<T> obj....) { ... }