C# FileStream類為文件操作提供了一個(gè)流。它可以用于執(zhí)行同步和異步的讀寫操作。在FileStream類的幫助下,我們可以輕松地將數(shù)據(jù)讀寫到文件中。
下面來(lái)看看一個(gè)使用FileStream類的簡(jiǎn)單例子,它實(shí)現(xiàn)將單字節(jié)的數(shù)據(jù)寫入文件。在這里,使用OpenOrCreate文件模式打開文件,這樣的話可以對(duì)文件執(zhí)行讀寫操作。
using System;
using System.IO;
public class FileStreamExample
{
public static void Main(string[] args)
{
FileStream f = new FileStream("e:\\filestream-demo.txt", FileMode.OpenOrCreate);//creating file stream
f.WriteByte(65);//writing byte into stream
f.Close();//closing stream
}
}
執(zhí)行上面代碼后,打文件:filestream-demo.txt應(yīng)該會(huì)看到以下內(nèi)容 -
A
下面再來(lái)看看另外一個(gè)例子,使用循環(huán)將多個(gè)字節(jié)的數(shù)據(jù)寫入文件。
using System;
using System.IO;
public class FileStreamExample
{
public static void Main(string[] args)
{
FileStream f = new FileStream("e:\\filestream-demo.txt", FileMode.OpenOrCreate);
for (int i = 65; i <= 90; i++)
{
f.WriteByte((byte)i);
}
f.Close();
}
}
執(zhí)行上面代碼后,打文件:filestream-demo.txt應(yīng)該會(huì)看到以下內(nèi)容 -
ABCDEFGHIJKLMNOPQRSTUVWXYZ
下面來(lái)看看一個(gè)使用FileStream類從文件中讀取數(shù)據(jù)的例子。 這里,FileStream類的ReadByte()方法返回單字節(jié)。要讀取所有的字節(jié),需要使用循環(huán)。
using System;
using System.IO;
public class FileStreamExample
{
public static void Main(string[] args)
{
FileStream f = new FileStream("e:\\filestream-demo.txt", FileMode.OpenOrCreate);
int i = 0;
while ((i = f.ReadByte()) != -1)
{
Console.Write((char)i);
}
f.Close();
}
}
執(zhí)行上面代碼后,應(yīng)該會(huì)看到輸出以下內(nèi)容 -
ABCDEFGHIJKLMNOPQRSTUVWXYZ