C# 檔案與路徑操作

來源:互聯網
上載者:User

標籤:system   arp   erb   getpath   元素   efi   filter   根目錄   本地   

OpenFileDialog
private void btnOpenFileDialog_Click(object sender, EventArgs e)        {            OpenFileDialog openFileDialog = new OpenFileDialog();            openFileDialog.InitialDirectory = @"C:\SeeSharp\LYH";                   //設定起始路徑            openFileDialog.Title = "開啟檔案";                                      //對話方塊標題            openFileDialog.Filter = "JXI Vector file|*.iq|實訊號|*.if";             //設定過濾器            openFileDialog.FilterIndex = 1;                                         //預設過濾器中類型            openFileDialog.Multiselect = false;                                     //是否允許多選            openFileDialog.RestoreDirectory = true;                                 //再次開啟是否記住上次路徑            if (openFileDialog.ShowDialog() != DialogResult.OK) return;             //開啟對話方塊,對話方塊結果不為OK則返回            if (openFileDialog.Multiselect)            {                textBox1.Text = "";                foreach (var item in openFileDialog.FileNames) { textBox1.AppendText(item + "\r\n"); }            }            else            {                textBox1.Text = openFileDialog.FileName;            }        }
SaveFileDialog
private void btnSaveFileDialog_Click(object sender, EventArgs e)        {            SaveFileDialog saveFileDialog = new SaveFileDialog();            saveFileDialog.Title = "開啟檔案";                                      //對話方塊標題            saveFileDialog.Filter = "txt files (*.txt)|*.txt|All files (*.*)|*.*";  //設定過濾器            saveFileDialog.FilterIndex = 0;                                         //預設過濾器中類型            saveFileDialog.RestoreDirectory = true;                                 //儲存對話方塊是否記憶上次開啟的目錄            if (saveFileDialog.ShowDialog() != DialogResult.OK) return;             //開啟對話方塊,對話方塊結果不為OK則返回            textBox1.Text = saveFileDialog.FileName;        }
FolderBrowserDialog
private void btnFolderBrowserDialog_Click(object sender, EventArgs e)        {            FolderBrowserDialog folderBrowserDialog = new FolderBrowserDialog();            folderBrowserDialog.SelectedPath = @"C:\SeeSharp\LYH\SeeSharpTools";        //設定預設路徑            folderBrowserDialog.Description = "請選擇一個檔案夾";                       //設定提示資訊            if (folderBrowserDialog.ShowDialog() == DialogResult.OK)                    //開啟對話方塊 //擷取選中結果            {                textBox1.Text = folderBrowserDialog.SelectedPath;            }        }
擷取特殊目錄
static void SpecialDirectory()        {            string dir;                        //擷取目前的目錄(即該進程從中啟動的目錄)的完全限定路徑。            dir = Environment.CurrentDirectory;            //備忘 按照定義,如果該進程在本地或網路磁碟機的根目錄中啟動,則此屬性的值為磁碟機名稱後跟一個尾部反斜線(如“C:/”)。            //如果該進程在子目錄中啟動,則此屬性的值為不帶尾部反斜線的磁碟機和子目錄路徑(如“C:/mySubDirectory”)。            dir = Directory.GetCurrentDirectory();            //擷取目前的目錄的上級目錄            dir = Path.GetFullPath("..");            //案頭路徑            dir = "案頭路徑:"                 + Environment.GetFolderPath(Environment.SpecialFolder.DesktopDirectory);            //ProgramData檔案夾路徑            dir = "ProgramData檔案夾路徑:"                 + Environment.GetFolderPath(Environment.SpecialFolder.CommonApplicationData);            //我的文件檔案夾路徑            dir = "我的文件檔案夾路徑"                 + Environment.GetFolderPath(Environment.SpecialFolder.MyDocuments);                       //獲得當前可執行檔exe檔案名稱            dir = "Process.GetCurrentProcess().MainModule.FileName:"                 + Process.GetCurrentProcess().MainModule.FileName;                       //擷取基目錄,它由程式集衝突解決程式用來探測程式集。            dir = "AppDomain.CurrentDomain.BaseDirectory:"                 + AppDomain.CurrentDomain.BaseDirectory;                      //擷取啟動了應用程式的可執行檔的路徑,不包括可執行檔的名稱。(如:D:/project/集團客戶簡訊服務端/bin/Debug)            dir = "System.Windows.Forms.Application.StartupPath:"                 + System.Windows.Forms.Application.StartupPath;                       //擷取啟動了應用程式的可執行檔的路徑,包括可執行檔的名稱。            dir = "System.Windows.Forms.Application.ExecutablePath:"                 + System.Windows.Forms.Application.ExecutablePath;                       //擷取或設定包含該應用程式的目錄的名稱。             dir = "AppDomain.CurrentDomain.SetupInformation.ApplicationBase:"                 + AppDomain.CurrentDomain.SetupInformation.ApplicationBase;                        Console.ReadKey();        }
擷取目前的目錄及其父目錄
        /// <summary>        /// 擷取目前的目錄及目前的目錄第n級的父目錄        /// </summary>        /// <param name="level">父目錄層級,大於等於0</param>        /// <returns></returns>        public static string CurrentDirectory(int level=0)        {            string str = Environment.CurrentDirectory;            for (int i = 0; i < level; i++)                str = str.Substring(0, str.LastIndexOf(@"\"));            return str;        }
擷取已知路徑中的元素
static void pth()        {            string dir;            string filePath = "C:\\JiYF\\BenXH\\BenXHCMS.xml";                   dir = "擷取檔案的全路徑:" + Path.GetFullPath(filePath);//-->C:\JiYF\BenXH\BenXHCMS.xml                       dir = "擷取檔案所在的目錄:" + Path.GetDirectoryName(filePath);//-->C:\JiYF\BenXH                       dir = "擷取檔案的名稱含有尾碼:" + Path.GetFileName(filePath);//-->BenXHCMS.xml                       dir = "擷取檔案的名稱沒有尾碼:" + Path.GetFileNameWithoutExtension(filePath); //-->BenXHCMS                       dir = "擷取路徑的尾碼副檔名稱:" + Path.GetExtension(filePath);//-->.xml                        dir = "擷取路徑的根目錄:" + Path.GetPathRoot(filePath);//-->C:\            Console.ReadKey();        }
檔案操作
private void FileOperations()        {            string sourcePath = "sourcePath";            string destpath = "destpath";                        //複製檔案到目標路徑            File.Copy(sourcePath, destpath);            //刪除制定檔案            File.Delete(sourcePath);            //移動檔案到目標路徑【重新命名的實現方法】            //sourcePath與destpath在不同目錄下則為檔案的移動,在同一目錄下則為檔案的重新命名            File.Move(sourcePath, destpath);            //開啟一個文字檔*.txt ,讀取檔案中資料,然後關閉該檔案            File.ReadAllText(sourcePath);            //建立一個檔案,向其中寫入資料,如果此路徑下有同名檔案則會覆蓋            //【PS:對檔案進行寫入操作,如果路徑下有同名檔案則會進行覆蓋,所以最好進行一次判斷,跟使用者互動一下在進行覆蓋】            File.WriteAllText(sourcePath, "要寫入檔案的字串"); 
        }
參考 https://www.cnblogs.com/Zhang-silence/p/6866722.html 

C# 檔案與路徑操作

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.