c# 文件與流
阿新 • • 發佈:2017-12-24
stream click 刪除文件 存儲目錄 public col style 空間 存在
1、創建和刪除目錄
在c#中涉及到輸入、輸出(i/o)相關操作的API都被放在System.IO命名空間下,或者子命令System.IO.IsolatedStoorage中。對目錄進行操作可以使用Directory類和DirectoryInfo類。Directory類,提供了一些便捷的方法可以幫助開發人員輕松的對目錄進行操作。DirectoryInfo類的功能和Directory類相似,公開了更多的成員以獲得目錄信息。
使用兩個按鈕實現,文件目錄的創建和刪除
//引入輸入、輸出命名空間。 using System.IO; namespace WindowsFormsApp1 {public partial class Form1 : Form { //聲明兩個私有字段 DirectoryInfo dirInfo = null;//操作目錄的對象 string dirName = string.Empty;//用於存儲目錄名稱 public Form1() { InitializeComponent(); } //創建按鈕Click private voidbutton1_Click(object sender, EventArgs e) { //判斷輸入是否為空 if(string .IsNullOrWhiteSpace(textBox1.Text)) { //打印提示語句 MessageBox.Show("IN err"); return; } dirName = textBox1.Text.Trim();//從當前System.String 對象移除所有空白字符和尾部空白字符 保存在目錄名中dirInfo = new DirectoryInfo(dirName);//實例dirInfo //判斷目錄是否存在 if(dirInfo.Exists)//如果目錄存在,則為 true;否則為 false。 { dirInfo.Delete();//如果存在刪除目錄 } //創建目錄 dirInfo.Create(); MessageBox.Show("目錄" + dirName + "創建成功"); } private void Form1_Load(object sender, EventArgs e) { } //刪除按鈕Click private void button2_Click(object sender, EventArgs e) { if(dirInfo!=null && !string.IsNullOrWhiteSpace(dirName)) { dirInfo.Delete(); dirInfo = null; } } } }
註意:如果希望在指定的目錄下創建目錄,可以指定絕對路徑。
2、創建文件和刪除文件
與目錄操作相似,對於文件操作,同樣有兩個類可以選擇。File類和FileInfo類。
//引入文件命名空間 using System.IO; namespace WindowsFormsApp1 { public partial class Form1 : Form { public Form1() { InitializeComponent(); } string fileName = string.Empty;//用於存放新文件的名字 private void Form1_Load(object sender, EventArgs e) { } //Create Click Button function private void Create_Click(object sender, EventArgs e) { //判斷文件名是否為空 if(string.IsNullOrWhiteSpace(Name.Text)) { MessageBox.Show("文件名為空"); return; } fileName = Name.Text; //如果文件已存在,刪除 if (File.Exists(fileName))//確定指定文件是否存在 { File.Delete(fileName); } var fs = File.Create(fileName);//創建文件 //向文件寫入3000字節 Random rand = new Random(); byte[] buf = new byte[3000]; rand.NextBytes(buf);//使用隨機數填充指定字節數組元素 fs.Write(buf, 0, buf.Length);//將字節快寫去文件流 MessageBox.Show("創建"+fileName+"成功"); fs.Dispose();//釋放資源,Syst.IO.Stream使用的資源 } private void Delete_Click(object sender, EventArgs e) { if(File.Exists(fileName)) { File.Delete(fileName);//刪除文件 } } } }
c# 文件與流