因为所有的文件都是以字节形式来存储的.
//StreamReader类和StreamWriter类是用来操作字符的.
FileStream类和 StreamReader以及StreamWriter
它们都是可以用来操作大文件的.
File类只能用来操作小文件
回忆一下,倒水缸
FileStream类的练习:
//使用FileStream类来读取数据
namespace _18.FileStream类的学习
{
class Program
{
static void Main(string[] args)
{
FileStream fsRead = new FileStream("抽象类特点.txt", FileMode.OpenOrCreate, FileAccess.Read);
byte[] byArray=new byte[1024*1024*5]; //每次限定读5MB
//返回本次实际读取到的有效字节数
int r=fsRead.Read(byArray, 0, byArray.Length);
//将字节数组中每一个元素按照指定的编码格式解码成字符串
string s=Encoding.Default.GetString(byArray, 0, r);
//关闭流
fsRead.Close();
//释放流所占用的资源
fsRead.Dispose();
Console.WriteLine(s);
Console.ReadKey();
}
}
}
//使用FileStream类来写入数据
namespace _19.使用FileStream类写入数据
{
class Program
{
static void Main(string[] args)
{
string s1 = "今天天气好晴朗,处处好风光";
char[] cArray=s1.ToCharArray();
byte[] buffer=Encoding.Default.GetBytes(cArray); //将字符数组转换成字节数组
FileStream fsWrite = new FileStream("使用FileStream类来创建的文件.txt",FileMode.Create,FileAccess.Write);
fsWrite.Write(buffer, 0, buffer.Length);
fsWrite.Close(); //关闭流
fsWrite.Dispose(); //释放资源
Console.WriteLine("写入成功");
Console.ReadKey();
}
}
}