如何根据我当前的读入方法
获取文件的特定文件名我以这种方式抓取文件:
var lines = Directory.GetFiles(path, "prefix*.csv").Select(
fn => File.ReadAllLines(fn).Select(a => a.Split(',')).ToList()).ToList();
每个文件完成后我想将文件从一个位置移动到另一个位置,但我没有确切的文件名:
File.Move(path, destPath);
答案 0 :(得分:3)
不要滥用LINQ。如果你需要中间的数据(比如文件名),那么就从你的链式LINQ语句中删除一些部分来完成你想要做的事情。
foreach (var filename in Directory.GetFiles(path, "prefix*.csv)) {
var linesFromOneFile = File.ReadAllLines(filename)
.Select(a => a.Split(',')).ToList();
// Whatever else with 'filename'
File.Move(...);
}
答案 1 :(得分:0)
在这种情况下,我认为将操作分成多个步骤而不是一个链式命令会更明智。存储您的文件名,然后根据需要对其进行处理,然后遍历文件名集合,只需将它们移动到您想要的位置即可。