Flile類的常用方法
序號 |
方法 |
說明 |
1 |
Exists(string Path) |
用于檢查指定文件是否存在,該方法返回一個布爾值 |
2 |
Copy(string SourceFilePath,string DestinationFilePath) |
將指定路徑的源文件中的內(nèi)容復制到目標文件中,如果目標文件不存在,則在指定路徑中新建一個文件 |
3 |
Move(string sourceFileName,string destFileName) |
將指定文件移到一個新的路徑 |
4 |
Delete(string path) |
刪除指定的文件,如果指定的文件不存在,則不引發(fā)異常 |
Directory類的常用方法
序號 |
方法 |
說明 |
1 |
Exists(string path) |
用于堅持指定的文件夾在磁盤上是否存在 |
2 |
Move(string sourceDirName,string DestDirName) |
用于將文件或目錄及其內(nèi)容移到新位置 |
3 |
Delete(string,bool) |
刪除指定目錄,如果bool值為true,則刪除子目錄中的所有目錄內(nèi)容 |
例:
代碼:
private void button1_Click(object sender, EventArgs e)
{
openFileDialog1.Filter = "全部文件 *.*|*.*";
openFileDialog1.FileName = "全部文件";
openFileDialog1.ShowDialog();
this.textBox1.Text = openFileDialog1.FileName;
}
private void button2_Click(object sender, EventArgs e)
{
openFileDialog1.Filter = "全部文件 *.*|*.*";
openFileDialog1.FileName = "全部文件";
openFileDialog1.ShowDialog();
this.textBox2.Text = openFileDialog1.FileName;
}
//復制文件
private void button3_Click(object sender, EventArgs e)
{
if (!File.Exists(this.textBox1.Text))
{
MessageBox.Show("文件不存在");
}
else
{
File.Copy(this.textBox1.Text, this.textBox2.Text);
MessageBox.Show("拷貝成功");
}
}
//移動文件
private void button4_Click(object sender, EventArgs e)
{
if (!File.Exists(this.textBox1.Text))
{
MessageBox.Show("文件不存在");
}
else
{
File.Move(this.textBox1.Text, this.textBox2.Text);
MessageBox.Show("移動成功");
}
}
//刪除文件
private void button5_Click(object sender, EventArgs e)
{
if (!File.Exists(this.textBox1.Text))
{
MessageBox.Show("文件不存在");
}
else
{
File.Delete(this.textBox1.Text);
MessageBox.Show("刪除成功");
}
}
FileInfo類的屬性和方法
屬性 |
說明 |
Exists |
用于檢查指定文件是否存在,返回一個bool值 |
Extension |
獲取表示文件擴展命名部分的字符串 |
Name |
獲取文件名 |
FullName |
獲取目錄或文件的完整目錄 |
方法 |
說明 |
CopyTo(string) |
將現(xiàn)有文件復制到新文件,不允許覆蓋現(xiàn)有文件 |
Delete() |
永久刪除文件 |
MoveTo(string) |
將指定文件移到新位置(string) |
例:
DirectoryInfo di = new DirectoryInfo("D:\testDir");
//返回當前目錄的子目錄
DirectoryInfo[] subDir = di.GetDirectories();
//返回當前目錄的文件列表
FileInfo[] fi = di.GetFiles();
步驟:
1.引入命名空間:using System.Runtime.Serialization.Formatters.Binary;
2.在SavingInfo、Remind等類的頭部加一個標記[Serializable],例如:
[Serializable]
Public class SavingInfo
{
//..............
}
3.編寫Save()方法和Load()方法,例如:
//序列化方法
public void Save()
{
//定義文件流
FileStream fs = new FileStream(@"files\save.bin", FileMode.Create);
//二進制方式
BinaryFormatter bf = new BinaryFormatter();
//序列化存儲對象
bf.Serialize(this.listArrays);
//關閉文件流
fs.Close();
}
//反序列化方法
public void Load()
{
//省略判斷文件是否存在
FileStream fs = new FileStream(@"files\save.bin",FileMode.Open);
BinaryFormatter bf=new BinaryFormatter();
//反序列化
this.lisArrays = (SavingInfo)bf.Deserialize(fs);
fs.Close();
}
注:Deserialize()方法將存儲介質的數(shù)據(jù)文件流轉換為object類型。
不想序列化的屬性在其頭部加上[NonSerialized]標記即可。
另外有需要云服務器可以了解下創(chuàng)新互聯(lián)scvps.cn,海內(nèi)外云服務器15元起步,三天無理由+7*72小時售后在線,公司持有idc許可證,提供“云服務器、裸金屬服務器、高防服務器、香港服務器、美國服務器、虛擬主機、免備案服務器”等云主機租用服務以及企業(yè)上云的綜合解決方案,具有“安全穩(wěn)定、簡單易用、服務可用性高、性價比高”等特點與優(yōu)勢,專為企業(yè)上云打造定制,能夠滿足用戶豐富、多元化的應用場景需求。
分享名稱:C#文件操作知識點(2)-創(chuàng)新互聯(lián)
轉載來于:http://aaarwkj.com/article32/dsjjsc.html
成都網(wǎng)站建設公司_創(chuàng)新互聯(lián),為您提供網(wǎng)站設計公司、軟件開發(fā)、靜態(tài)網(wǎng)站、品牌網(wǎng)站制作、Google、搜索引擎優(yōu)化
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉載內(nèi)容為主,如果涉及侵權請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉載,或轉載時需注明來源: 創(chuàng)新互聯(lián)