日期:2014-05-20 浏览次数:21123 次
//1、查询指定名称的文件 private static void FileQuery() { ///获取"我的文档"的路径 string directory = Environment.GetFolderPath(Environment.SpecialFolder.MyDocuments); List<FileInfo> files = new List<FileInfo>(); ///获取文件列表信息 foreach (var file in Directory.GetFiles(directory)) { files.Add(new FileInfo(file)); } ///查询文件列表信息 var filevalues = from file in files where file.Extension == ".pdf" && file.Name.IndexOf("报告") > -1 orderby file.Name select file; ///显示查询结果 foreach (var f in filevalues) { Console.WriteLine(f.Name); } } //运行结果: /* 个人述职报告.pdf 个人述职报告-96.pdf WPF程序设计指南(有书).pdf */
//2、查询指定扩展名的文件 private static void FileExtensionsQuery() { ///获取"我的文档"的路径 string directory = Environment.GetFolderPath(Environment.SpecialFolder.MyDocuments); List<FileInfo> files = new List<FileInfo>(); ///获取文件列表信息 foreach (var file in Directory.GetFiles(directory)) { files.Add(new FileInfo(file)); } ///按文件扩展名分组 var fExtensions = from fe in files group fe by fe.Extension into g orderby g.Key select g; ///显示查询结果 foreach (var f in fExtensions) { foreach (var fi in f) { Console.WriteLine(fi.Name); } } } //运行结果: /* desktop.ini 个人述职报告.pdf 个人述职报告-96.pdf WPF程序设计指南(有书).pdf 1.png 个人述职报告.txt */
//3、查询指定属性的文件 private static void FileAttributeQuery() { ///获取"我的文档"的路径 string directory = Environment.GetFolderPath(Environment.SpecialFolder.MyDocuments); ///获取文件信息 List<FileInfo> files = new List<FileInfo>(); ///获取文件列表信息 foreach (var file in Directory.GetFiles(directory)) { files.Add(new FileInfo(file)); } //根据文件大小(大于1M小于4M)查询文件,并进行分组排序, var fAttribute = from fa in files where fa.Length >= 1024 * 1024 && fa.Length <= 4096 * 1024 orderby fa.Name select fa; ///显示查询结果 foreach (var fa in fAttribute) { Console.WriteLine(fa.Name); } } //运行结果: /*WPF程序设计指南(有书).pdf*/
//4、统计文件夹的大小 private static void FileSizeQuery() { ///获取"我的文档"的路径 string directory = Environment.GetFolderPath(Environment.SpecialFolder.MyDocuments); ///获取文件信息 List<FileInfo> files = new List<FileInfo>(); ///获取文件列表信息 foreach (var file in Directory.GetFiles(directory)) { files.Add(new FileInfo(file)); } //搜索文件的大小 var fSize = from fs in files select fs.Length; ///对文件大小求和 long size = fSize.Sum(); ///显示查询结果 Console.WriteLine(size.ToString()); } //运行结果: /* 10786712 */