C# 操作文件和文件夾

  1. 選擇文件
OpenFileDialog fd = new OpenFileDialog();
fd.Filter = "excel (*.xlsx)|*.xlsx|excel 2003 (*.xls)|*.xls"; //過濾文件類型
fd.Multiselect = true;//文件多選
fd.InitialDirectory = System.Windows.Forms.Application.StartupPath + "\\Temp\\";//設定初始目錄,不設置就顯示上次打開目錄
fd.ShowReadOnly = false; //設定文件是否只讀
DialogResult r = fd.ShowDialog();
if (r == DialogResult.OK)
{
    string filepath = fd.FileName;//文件完整路徑
    string strPath = System.IO.Path.GetDirectoryName(filepath );//文件路徑
    string fileName = System.IO.Path.GetFileName(filepath ); //文件名
    string fileType = System.IO.Path.GetExtension(filepath );//擴展名
}

2.選擇目錄     

System.Windows.Forms.FolderBrowserDialog folderBrowserDialog1 = new System.Windows.Forms.FolderBrowserDialog();
folderBrowserDialog1.Description = "選擇文件所在文件夾";
folderBrowserDialog1.SelectedPath = "";//默認路徑
if (folderBrowserDialog1.ShowDialog() == System.Windows.Forms.DialogResult.OK)
{
    strPath = folderBrowserDialog1.SelectedPath;//
}
else
    return;

//獲得目錄下文件完整路徑
String[] files1 = Directory.GetFiles(strPath, "*.txt", SearchOption.AllDirectories);//參數1:目錄;參數2:文件類型;參數3:是否包含子級目錄文件

3.   刪除文件

//string fileName = ""//文件路徑
//File.Delete(fileName);//文件刪除
//Directory.Delete(path,true);//刪除路徑和路徑下文件
string path = "";//路徑
FileAttributes attr = File.GetAttributes(path);//路徑屬性
//判斷path是文件還是文件夾路徑
if (attr == FileAttributes.Directory)
{
    Directory.Delete(path,true);//刪除路徑和路徑下文件
    //DirectoryInfo dir = new DirectoryInfo(path);
    //foreach (System.IO.FileInfo file in dir.GetFiles()) file.Delete();//刪除當前路徑路徑下文件,不包括子目錄。可以設置GetFiles(".txt",SearchOption.AllDirectories)的參數實現刪除的文件類型及是否同時刪除子目錄文件
    //foreach (System.IO.DirectoryInfo subDirectory in dir.GetDirectories())        subDirectory.Delete(true);//刪除子目錄和子目錄文件
}
else
{
    File.Delete(path);
}

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章