C#遍历目录和文件(使用Linq)

 

语言越来越强大,程序员越来越轻松。
1.枚举所有目录中的名称

 

try
            {
                
//返回指定路径中与搜索模式匹配的文件名称的可枚举集合,还可以搜索子目录。
                var files = from file in Directory.EnumerateFiles(@"F:/电影/""*.txt", SearchOption.AllDirectories)
                            
from line in File.ReadLines(file)
                            
where line.Contains("Microsoft")
                            
select new
                            {
                                File
=file,
                                Line
=line
                            };
                
foreach (var f in files)
                {
                    Console.WriteLine(
"{0}/t{1}", f.File, f.Line);
                }
                Console.WriteLine(files.Count().ToString());
            }

            
catch (UnauthorizedAccessException UAEx)
            {
                Console.WriteLine(UAEx.Message);
            }
            
catch(PathTooLongException PathEx)
            {
                Console.WriteLine(PathEx.Message);
            }

2.枚举当前目录的目录及其文件

 

  DirectoryInfo Dir = new DirectoryInfo(@"F:/电影");
            
var files = from file
                            
in Dir.EnumerateFiles()
                            
select file;

            
foreach (var f in files)
            {
                Console.WriteLine(
"filename:{0}",f);
            }

            
var directory = from dir
                            
in Dir.EnumerateDirectories()
                            
select dir;
            
foreach (var f in directory)
            {
                Console.WriteLine(
"DirectotyName:{0}", f);
            }

url: http://greatverve.cnblogs.com/archive/2011/07/04/linq-dir-file.html#
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值