您好,登錄后才能下訂單哦!
Flile類(lèi)的常用方法
序號(hào) |
方法 |
說(shuō)明 |
1 |
Exists(string Path) |
用于檢查指定文件是否存在,該方法返回一個(gè)布爾值 |
2 |
Copy(string SourceFilePath,string DestinationFilePath) |
將指定路徑的源文件中的內(nèi)容復(fù)制到目標(biāo)文件中,如果目標(biāo)文件不存在,則在指定路徑中新建一個(gè)文件 |
3 |
Move(string sourceFileName,string destFileName) |
將指定文件移到一個(gè)新的路徑 |
4 |
Delete(string path) |
刪除指定的文件,如果指定的文件不存在,則不引發(fā)異常 |
Directory類(lèi)的常用方法
序號(hào) |
方法 |
說(shuō)明 |
1 |
Exists(string path) |
用于堅(jiān)持指定的文件夾在磁盤(pán)上是否存在 |
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;
}
//復(fù)制文件
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("拷貝成功");
}
}
//移動(dòng)文件
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("移動(dòng)成功");
}
}
//刪除文件
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類(lèi)的屬性和方法
屬性 |
說(shuō)明 |
Exists |
用于檢查指定文件是否存在,返回一個(gè)bool值 |
Extension |
獲取表示文件擴(kuò)展命名部分的字符串 |
Name |
獲取文件名 |
FullName |
獲取目錄或文件的完整目錄 |
方法 |
說(shuō)明 |
CopyTo(string) |
將現(xiàn)有文件復(fù)制到新文件,不允許覆蓋現(xiàn)有文件 |
Delete() |
永久刪除文件 |
MoveTo(string) |
將指定文件移到新位置(string) |
例:
DirectoryInfo di = new DirectoryInfo("D:\testDir");
//返回當(dāng)前目錄的子目錄
DirectoryInfo[] subDir = di.GetDirectories();
//返回當(dāng)前目錄的文件列表
FileInfo[] fi = di.GetFiles();
步驟:
1.引入命名空間:using System.Runtime.Serialization.Formatters.Binary;
2.在SavingInfo、Remind等類(lèi)的頭部加一個(gè)標(biāo)記[Serializable],例如:
[Serializable]
Public class SavingInfo
{
//..............
}
3.編寫(xiě)Save()方法和Load()方法,例如:
//序列化方法
public void Save()
{
//定義文件流
FileStream fs = new FileStream(@"files\save.bin", FileMode.Create);
//二進(jìn)制方式
BinaryFormatter bf = new BinaryFormatter();
//序列化存儲(chǔ)對(duì)象
bf.Serialize(this.listArrays);
//關(guān)閉文件流
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()方法將存儲(chǔ)介質(zhì)的數(shù)據(jù)文件流轉(zhuǎn)換為object類(lèi)型。
不想序列化的屬性在其頭部加上[NonSerialized]標(biāo)記即可。
免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。