//文件流
//读取
public void filestreamRead()
{
FileStream fsRead = new FileStream(@"C:\Users\Administrator\Desktop\newfile.txt", FileMode.OpenOrCreate,FileAccess.Read);
byte[] buffer = new byte[1024 * 1024 * 5];//读取5M
//返回本次实际读取到的有效字节数
int r= fsRead.Read(buffer, 0, buffer.Length);
//将字节数组中的每一个元素按照指定的编码格式解码成字符串
string s = Encoding.UTF8.GetString(buffer,0,r);
//关闭流
fsRead.Close();
//释放流所占用的资源
fsRead.Dispose();
Console.WriteLine(s);
Console.ReadKey();
}
//使用StreamReader来读取一个文本文件
public void StreamReader()
{
using (StreamReader sr=new System.IO.StreamReader(@"C:\Users\Administrator\Desktop\newfile.txt"))
{
while (!sr.EndOfStream)
{
Console.WriteLine(sr.ReadLine());
}
Console.ReadKey();
}
}
//使用Streamwriter来读取一个文本文件
public void StreamWriter()
{
using (StreamWriter sw=new System.IO.StreamWriter(@"C:\Users\Administrator\Desktop\newfile.txt",true))//true是否追加
{
sw.WriteLine("\n今天下雨了.");
}
Console.WriteLine("ok");
Console.ReadKey();
}
//写入
public void filestreamWrite()
{
using (FileStream fsWrite=new FileStream(@"C:\Users\Administrator\Desktop\newfile.txt", FileMode.OpenOrCreate,FileAccess.Write))
{
string str = "世界那么大,我想去看看";
byte[] buffer = Encoding.UTF8.GetBytes(str);
fsWrite.Write(buffer, 0, buffer.Length);
}
Console.WriteLine("写入成功");
Console.ReadKey();
}
//思路 : 就是先将要复制的多媒体读取出来,然后再写入到你指定的位置
public void copyFile()
{
string source = @"C:\Users\Administrator\Desktop\mda-mc9ebdf7c7jfvj6x.mp4";
string targe = @"C:\Users\Administrator\Desktop\mtyiimg\mda-mc9ebdf7c7jfvj6x.mp4";
//创建一个复制读取的流
using (FileStream fsread=new FileStream(source, FileMode.Open, FileAccess.Read))
{
//创建一个复制写入的流
using (FileStream fswrite=new FileStream (targe,FileMode.OpenOrCreate,FileAccess.Write))
{
byte[] buffer = new byte[1024 * 1024 * 5];
//因为文件可能会比较大,所以我们在读取的时候 应该通过一个循环去读取
while (true)
{
//返回本次读取实际读取到的字节数
int r = fsread.Read(buffer, 0, buffer.Length);
if (r==0)
{
break;
}
fswrite.Write(buffer, 0, r);
}
}
}
Console.WriteLine("复制成功");
Console.ReadKey();
}
文件流的使用(C#)
最新推荐文章于 2022-11-12 11:38:49 发布