File類,是一個靜態類,主要是來提供一些函數庫用的。靜態實用類,提供了不少靜態的方法,支持對文件的基本操做,包括建立,拷貝,移動,刪除和 打開一個文件。html
File類方法的參量不少時候都是路徑path。File的一些方法能夠返回FileStream和StreamWriter的對象。能夠 和他們配套使用。System.IO.File類和System.IO.FileInfo類數組
主要提供有關文件的各類操做,在使用時須要引用System.IO命名空間。app
1、File類經常使用的操做方法函數
一、建立文件方法佈局
//參數1:要建立的文件路徑測試
File.Create(@"D:\Test\Debug1\測試.txt")this
二、打開文件方法spa
//參數1:要打開的文件路徑,參數2:打開的文件方式orm
File.Open(@"D:\Test\Debug1\測試.txt",FileMode.Append)htm
三、追加文件方法
//參數1:要追加的文件路徑,參數2:追加的內容
File.AppendAllText(@"D:\Test\Debug1\測試.txt","哈哈");
四、複製文件方法
//參數1:要複製的源文件路徑,參數2:複製後的目標文件路徑,參數3:是否覆蓋相同文件名
File.Copy(@"D:\Test\Debug1\測試.txt", @"D:\Test\Debug2\測試1.txt", true);
五、移動文件方法
//參數1:要移動的源文件路徑,參數2:移動後的目標文件路徑
File.Move(@"D:\Test\Debug1\測試.txt", @"D:\Test\Debug3\測試2.txt");
六、刪除文件方法
//參數1:要刪除的文件路徑
File.Delete(@"D:\Test\Debug1\測試.txt");
七、設置文件屬性方法
//參數1:要設置屬性的文件路徑,參數2:設置的屬性類型(只讀、隱藏等)
File.SetAttributes(@"D:\Test\Debug1\測試.txt", FileAttributes.Hidden);
2、界面和源碼例子:
一、界面佈局
二、源碼例子:
using System; using System.Collections.Generic; using System.ComponentModel; using System.Data; using System.Drawing; using System.IO; using System.Linq; using System.Text; using System.Threading.Tasks; using System.Windows.Forms; namespace FileHandleTest { public partial class Form1 : Form { public Form1() { InitializeComponent(); } #region Files類的文件操做方法(建立、複製、刪除、移動、追加、打開、設置屬性等) static string path = @"D:\Test\Debug1\測試.txt"; //源文件路徑 static string path1 = @"D:\Test\Debug2\測試1.txt"; //文件複製路徑 static string path2 = @"D:\Test\Debug3\測試2.txt"; //文件移動路徑 static string path3 = @"C:\測試3.txt"; //跨盤符存放路徑(測試) /// <summary> /// 一、建立文件方法 /// </summary> /// <param name="sender"></param> /// <param name="e"></param> private void btncreate_Click(object sender, EventArgs e) { //參數1:指定要判斷的文件路徑 if (!File.Exists(path)) { //參數1:要建立的文件路徑,包含文件名稱、後綴等 FileStream fs = File.Create(path); fs.Close(); MessageBox.Show("文件建立成功!"); } else { MessageBox.Show("文件已經存在!"); } } /// <summary> ///二、 打開文件的方法 /// </summary> /// <param name="sender"></param> /// <param name="e"></param> private void btnopen_Click(object sender, EventArgs e) { if (File.Exists(path)) { //參數1:要打開的文件路徑,參數2:打開的文件方式 FileStream fs = File.Open(path, FileMode.Append); //字節數組 byte[] bytes = { (byte)'h', (byte)'e', (byte)'l', (byte)'l', (byte)'o' }; //經過字符流寫入文件 fs.Write(bytes, 0, bytes.Length); fs.Close(); MessageBox.Show("打開並追加Hello成功!"); } else { MessageBox.Show("文件不存在!"); } } /// <summary> /// 三、追加文件內容方法 /// </summary> /// <param name="sender"></param> /// <param name="e"></param> private void btnappend_Click(object sender, EventArgs e) { string appendtext = this.txtContent.Text; if (File.Exists(path)) { //參數1:要追加的文件路徑,參數2:追加的內容 File.AppendAllText(path, appendtext); MessageBox.Show("文件追加內容成功!"); } else { MessageBox.Show("文件不存在!"); } } /// <summary> /// 四、複製文件方法(只能在同個盤符進行操做) /// </summary> /// <param name="sender"></param> /// <param name="e"></param> private void btncopy_Click(object sender, EventArgs e) { if (File.Exists(path)) { //參數1:要複製的源文件路徑,參數2:複製後的目標文件路徑,參數3:是否覆蓋相同文件名 File.Copy(path, path1, true); MessageBox.Show("複製文件成功!"); } else { MessageBox.Show("文件不存在!"); } } /// <summary> /// 五、移動文件方法(只能在同個盤符進行操做) /// </summary> /// <param name="sender"></param> /// <param name="e"></param> private void btnmove_Click(object sender, EventArgs e) { if (File.Exists(path)) { //參數1:要移動的源文件路徑,參數2:移動後的目標文件路徑 File.Move(path, path2); MessageBox.Show("移動文件成功!"); } else { MessageBox.Show("文件不存在!"); } } /// <summary> /// 六、刪除文件方法 /// </summary> /// <param name="sender"></param> /// <param name="e"></param> private void btndelete_Click(object sender, EventArgs e) { if (File.Exists(path)) { //參數1:要刪除的文件路徑 File.Delete(path); MessageBox.Show("文件刪除成功!"); } else { MessageBox.Show("文件不存在!"); } } /// <summary> ////七、設置文件屬性方法 /// </summary> /// <param name="sender"></param> /// <param name="e"></param> private void btnset_Click(object sender, EventArgs e) { if (File.Exists(path)) { //參數1:要設置屬性的文件路徑,參數2:設置的屬性類型(只讀、隱藏等) File.SetAttributes(path, FileAttributes.Hidden); MessageBox.Show("設置文件屬性爲隱藏成功!"); } else { MessageBox.Show("文件不存在!"); } } #endregion } }
參考來源:http://www.cnblogs.com/mfc-itblog/p/5771780.html