C#中讀取和寫入文件的三種實用方法
嘿,程序員小伙伴們!今天咱們來聊聊C#中讀取和寫入文件的那些事兒。文件操作是編程中非常基礎(chǔ)也非常重要的一環(huán),無論是保存用戶數(shù)據(jù)、記錄日志還是處理配置文件,都離不開文件讀寫。C#提供了多種方式來讀取和寫入文件,今天咱們就挑三種最常用、最實用的方法來聊聊。
方法一:使用StreamReader和StreamWriter
這是C#中最直接、最常用的文件讀寫方式。StreamReader用于讀取文件,StreamWriter用于寫入文件。它們都是System.IO命名空間下的類,使用起來非常簡單。
讀取文件:
using System;
using System.IO;
class Program
{
static void Main()
{
string filePath = "example.txt";
using (StreamReader reader = new StreamReader(filePath))
{
string content = reader.ReadToEnd();
Console.WriteLine(content);
}
}
}
這段代碼會讀取example.txt文件的所有內(nèi)容,并打印到控制臺。使用using語句可以確保在讀取完成后自動關(guān)閉文件,避免資源泄露。
寫入文件:
using System;
using System.IO;
class Program
{
static void Main()
{
string filePath = "example.txt";
string content = "Hello, World!";
using (StreamWriter writer = new StreamWriter(filePath))
{
writer.Write(content);
}
}
}
這段代碼會將字符串"Hello, World!"寫入到example.txt文件中。同樣地,using語句確保了文件在寫入完成后被正確關(guān)閉。
方法二:使用File.ReadAllText和File.WriteAllText
如果你只需要一次性讀取或?qū)懭胝麄€文件的內(nèi)容,那么File.ReadAllText和File.WriteAllText這兩個靜態(tài)方法就非常方便了。它們同樣位于System.IO命名空間下。
讀取文件:
using System;
using System.IO;
class Program
{
static void Main()
{
string filePath = "example.txt";
string content = File.ReadAllText(filePath);
Console.WriteLine(content);
}
}
這段代碼和前面使用StreamReader的效果是一樣的,但代碼更加簡潔。
寫入文件:
using System;
using System.IO;
class Program
{
static void Main()
{
string filePath = "example.txt";
string content = "Hello, World!";
File.WriteAllText(filePath, content);
}
}
這段代碼會將字符串"Hello, World!"寫入到example.txt文件中,如果文件已經(jīng)存在,則會被覆蓋。
方法三:使用File.AppendAllText
有時候你可能需要在文件的末尾追加內(nèi)容,而不是覆蓋整個文件。這時候File.AppendAllText方法就非常有用了。
追加內(nèi)容到文件:
using System;
using System.IO;
class Program
{
static void Main()
{
string filePath = "example.txt";
string contentToAdd = "Hello again!";
File.AppendAllText(filePath, contentToAdd);
}
}
這段代碼會在example.txt文件的末尾追加字符串"Hello again!"。如果文件不存在,它會自動創(chuàng)建一個新文件。
總結(jié)
以上就是C#中讀取和寫入文件的三種常用方法。StreamReader和StreamWriter提供了靈活的文件讀寫能力,適合需要逐行讀取或?qū)懭胛募?nèi)容的場景;File.ReadAllText和File.WriteAllText則更加簡潔,適合一次性讀取或?qū)懭胝麄€文件內(nèi)容的場景;而File.AppendAllText則非常適合需要在文件末尾追加內(nèi)容的場景。
選擇哪種方法取決于你的具體需求,但無論哪種方法,都能幫助你輕松完成文件讀寫操作。