C#初學者教程系列22:檔案操作
本文是C#初學者簡單教程,這是第22篇。感謝觀看,記得關注我,後續還有更多教程文章,謝謝。
本文環境為Visual Studio 2019。
一、介紹
Windows下的檔案操作是很頻繁的。在C#中,提供了File、FileInfo、FileStream來操作檔案,api定義如下圖所示:
File:是一個靜態類,用於檔案的具體操作,如建立、複製、刪除、開啟等。這些都是針對一個具體的檔案來進行磁碟操作的。
FileInfo:檔案資料類。指每一個檔案的資訊資料,如建立時間、修改時間、檔案大小等。
FileStream:是檔案流的類。用於開啟檔案後,對檔案內容進行輸入輸出操作。
二、演示
我們通過一個簡單的例子,來演示如何建立、複製、刪除檔案,如何遍歷檔案等。
如上圖,我們來看一下:
- 我們先宣告瞭資料夾路徑,以及兩個檔案的路徑。
- 我們想要建立檔案,先使用Exists()方法判斷一下檔案是否存在。
- 使用Create()方法,我們可以建立一個檔案,並立即獲得它的FileStream檔案流物件,以便您可以馬上對這個檔案的內容進行操作。
- 我們想給檔案寫入“今天吃雞”4個字,通過Encoding字元編碼來得到位元組陣列,然後我們使用Write()方法,將字元寫入到檔案中,並使用fs.Close()方法關閉。
- 另一分支中,我們在檔案1存在的情況下,使用File.Copy()方法,將檔案拷貝到新檔案2。
- 然後我們使用FileInfo例項物件,輸出它的FullName、LastWriteTime等檔案資訊。
- 我們如果要遍歷一個目錄下的所有檔案列表,可以使用Directory.GetFiles()方法。
- 最後,我們嘗試刪除一個檔案,使用File.Delete()方法。
private void button1_Click(object sender, EventArgs e)
{
string folderPath = @"E:\test\";
string filePath1 = folderPath + @"1.txt";
string filePath2 = folderPath + @"2.txt";
if (!File.Exists(filePath1))
{
string content = "今天吃雞";
var bytes = Encoding.UTF8.GetBytes(content);
FileStream fs = File.Create(filePath1);
fs.Write(bytes, 0, bytes.Length);
fs.Close();
}
else
{
File.Copy(filePath1, filePath2);
FileInfo fi = new FileInfo(filePath2);
MessageBox.Show(fi.FullName);
MessageBox.Show(fi.LastWriteTime.ToString());
}
string[] files = Directory.GetFiles(folderPath);
foreach (var file in files)
{
MessageBox.Show(file);
}
File.Delete(filePath1);
}
祝您用餐愉快。
相關文章
- npm 初學者教程NPM
- 檔案操作(初階)
- Sprite Kit教程:初學者
- c#檔案操作C#
- C# 檔案操作C#
- 初學者(22) (7千字)
- C# 資料操作系列 - 10 NHibernate初試C#
- PHP檔案及執行(適合PHP初學者)PHP
- 給初學者的 type 命令教程
- 給初學者的 fc 示例教程
- C# 基礎知識系列- 14 IO篇 檔案的操作C#
- Ps 初學者教程如何建立海報?
- 給初學者看的 shuf 命令教程
- 給安卓初學者的12篇教程安卓
- 解除DLSupCBT的NAG窗和KEY檔案製作[原創] OLLYDBG初級教程,給初學者 (13千字)
- 給初學者的RxJava2.0教程(三)RxJava
- 給初學者的RxJava2.0教程(七)RxJava
- 初學者的機器學習入門實戰教程!機器學習
- 給初學者的 RxJava2.0 教程 (四)RxJava
- Oracle資料庫初學者入門教程Oracle資料庫
- Node腳手架編寫初學者教程
- 給初學者的RxJava2.0教程(一)RxJava
- 給初學者的RxJava2.0教程(二)RxJava
- 給初學者的RxJava2.0教程(五)RxJava
- 給初學者的 RxJava2.0 教程 (八)RxJava
- 給初學者的RxJava2.0教程(四)RxJava
- 給初學者的RxJava2.0教程(八)RxJava
- 給初學者的RxJava2.0教程(九)RxJava
- 給初學者的 RxJava2.0 教程 (九)RxJava
- c# 對檔案的各種操作C#
- C#檔案操作方法大全C#
- C#檔案路徑操作總結
- 給初學者:JavaScript 中陣列操作注意點JavaScript陣列
- python交教程4:檔案操作Python
- Python:檔案操作詳細教程Python
- 【譯】Jest 初學者教程:JavaScript 測試入門JavaScript
- AST語法結構樹初學者完整教程AST
- [譯] 給初學者的 Jupyter Notebook 教程