日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁 > 编程语言 > C# >内容正文

C#

C#获取文件夹下的所有文件的方法

發(fā)布時(shí)間:2025/4/14 C# 27 豆豆
生活随笔 收集整理的這篇文章主要介紹了 C#获取文件夹下的所有文件的方法 小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

目錄

  • ?#基礎(chǔ)知識(shí)
  • #只獲取目錄下一級(jí)的文件夾與文件
  • #?遞歸地輸出當(dāng)前運(yùn)行程序所在的磁盤下的所有文件名和子目錄名

?

正文

?#基礎(chǔ)知識(shí)

?  1、獲得當(dāng)前運(yùn)行程序的路徑

1 string rootPath = Directory.GetCurrentDirectory();

  2、獲得該文件夾下的文件,返回類型為FileInfo

1 string path=@"X:\XXX\XX"; 2 DirectoryInfo root = new DirectoryInfo(path); 3 FileInfo[] files=root.GetFiles();

  3、獲得該文件夾下的子目錄,返回類型為DirectoryInfo

1 string path=@"X:\XXX\XX"; 2 DirectoryInfo root = new DirectoryInfo(path); 3 DirctoryInfo[] dics=root.GetDirectories();

  4、獲得文件夾名

1 string path=@"X:\XXX\XX"; 2 DirectoryInfo root = new DirectoryInfo(path); 3 string dicName=root.Name;

  5、獲得文件夾完整的路徑名

1 string path=@"X:\XXX\XX"; 2 DirectoryInfo root = new DirectoryInfo(path); 3 string dicName=root.FullName;

  6、獲取文件的Name和FullName

1 string path=@"X:\XXX\XX"; 2 DirectoryInfo root = new DirectoryInfo(path); 3 foreach (FileInfo f in root.GetFiles()) 4 { 5 string name=f.Name; 6 string fullName=f.FullName; 7 } 7.獲取目錄下的文本文檔,并讀取內(nèi)容

  DirectoryInfo di = new DirectoryInfo(@"C:\Users\bt\Desktop\result");
  FileInfo[] f = di.GetFiles("*.txt");//獲取指定擴(kuò)展名的文件

  沒有xml文件
  if (f.Length <= 0)
  {
    return;
  }

  遍歷所有文件(*.txtl),并打開讀取文件內(nèi)容
  foreach (FileInfo myFile in f)
  {
    StreamReader sr = myFile.OpenText();
    string sds = sr.ReadToEnd();
    Console.WriteLine(sds);

  }
  Console.ReadKey();

  遍歷所有文件夾

  DirectoryInfo[] d = di.GetDirectories();

  foreach (DirectoryInfo myDir in d)

  {

    string str = myDir.FullName;
    Console.WriteLine(str);
  }
  Console.ReadKey();

#只獲取目錄下一級(jí)的文件夾與文件

1 String path = @"X:\xxx\xxx";2 3 //第一種方法4 string[] files = Directory.GetFiles(path, "*.txt");5 6 foreach (string file in files)7 {8 Console.WriteLine(file);9 } 10 11 //第二種方法 12 DirectoryInfo folder = new DirectoryInfo(path); 13 14 foreach (FileInfo file in folder.GetFiles("*.txt")) 15 { 16 Console.WriteLine(file.FullName); 17 }

#?遞歸地輸出當(dāng)前運(yùn)行程序所在的磁盤下的所有文件名和子目錄名

1 static void Main(string[] args)2 {3 //獲取當(dāng)前程序所在的文件路徑4 String rootPath = Directory.GetCurrentDirectory();5 string parentPath = Directory.GetParent(rootPath).FullName;//上級(jí)目錄6 string topPath = Directory.GetParent(parentPath).FullName;//上上級(jí)目錄7 StreamWriter sw = null;8 try9 { 10 //創(chuàng)建輸出流,將得到文件名子目錄名保存到txt中 11 sw = new StreamWriter(new FileStream("fileList.txt", FileMode.Append)); 12 sw.WriteLine("根目錄:" + topPath); 13 getDirectory(sw, topPath, 2); 14 } 15 catch (IOException e) 16 { 17 Console.WriteLine(e.Message); 18 } 19 finally 20 { 21 if (sw != null) 22 { 23 sw.Close(); 24 Console.WriteLine("完成"); 25 } 26 } 27 28 } 29 30 /// <summary> 31 /// 獲得指定路徑下所有文件名 32 /// </summary> 33 /// <param name="sw">文件寫入流</param> 34 /// <param name="path">文件寫入流</param> 35 /// <param name="indent">輸出時(shí)的縮進(jìn)量</param> 36 public static void getFileName(StreamWriter sw, string path, int indent) 37 { 38 DirectoryInfo root = new DirectoryInfo(path); 39 foreach (FileInfo f in root.GetFiles()) 40 { 41 for (int i = 0; i < indent; i++) 42 { 43 sw.Write(" "); 44 } 45 sw.WriteLine(f.Name); 46 } 47 } 48 49 /// <summary> 50 /// 獲得指定路徑下所有子目錄名 51 /// </summary> 52 /// <param name="sw">文件寫入流</param> 53 /// <param name="path">文件夾路徑</param> 54 /// <param name="indent">輸出時(shí)的縮進(jìn)量</param> 55 public static void getDirectory(StreamWriter sw, string path, int indent) 56 { 57 getFileName(sw, path, indent); 58 DirectoryInfo root = new DirectoryInfo(path); 59 foreach (DirectoryInfo d in root.GetDirectories()) 60 { 61 for (int i = 0; i < indent; i++) 62 { 63 sw.Write(" "); 64 } 65 sw.WriteLine("文件夾:" + d.Name); 66 getDirectory(sw, d.FullName, indent + 2); 67 sw.WriteLine(); 68 } 69 }

?

?

轉(zhuǎn)載于:https://www.cnblogs.com/zhou0818/p/10190546.html

總結(jié)

以上是生活随笔為你收集整理的C#获取文件夹下的所有文件的方法的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。