zl程序教程

您现在的位置是:首页 >  后端

当前栏目

C#中FileStream与StreamReader/StreamWriter区别

c# 区别 FileStream
2023-06-13 09:12:44 时间

大家好,又见面了,我是你们的朋友全栈君。

区别

FileStream类不是静态类,表示在磁盘或网络路径上指向文件的流。这个类提供了在文件中读写字节的方法,但经常使用StreamReader或 StreamWriter执行这些功能。这是因为FileStream类操作的是字节和字节数组,而Stream类操作的是字符数据。使用时需要创建对象,FileStream类既可以对文本文件进行读也可以对多媒体文件进行写,以字节数组的形式进行读和写,多用于对大文件进行读写,区别于File类的是它对文件可进行分步读写,减小内存压力。StreamReader和StreamWriter类多用于对小文件读写。

StreamReader方法

string path = @"G:\桌面\111\1.txt";
using (FileStream fs = new FileStream(path, FileMode.Open, FileAccess.Read, FileShare.Read))//找到指定路径的文件,打开,读取;using自动释放资源并且关闭
{ 
   
	using (StreamReader sr = new StreamReader(fs,Encoding.Default ))
    { 
   
        Console.WriteLine(sr.ReadLine());//读取指定路径下文件的一行字符
        Console.WriteLine(sr.ReadToEnd());//读取指定路径下文件中所有内容
        while (!sr.EndOfStream)//没读到文件中最后一行数据就一直读,读取文件中所有内容
        { 
   
            Console.WriteLine(sr.ReadLine());
        }
    }
}

StreamWriter方法

string path = @"G:\桌面\111\1.txt";
using (FileStream fs=new FileStream(path, FileMode.Open, FileAccess.Write, FileShare.Write ))//using自动释放资源并且关闭
{ 
   
    using (StreamWriter sw = new StreamWriter(fs, Encoding.Default))
    { 
   
        sw.Write("哈哈");//在指定路径文件下写入文本
    }
}
Console.ReadKey();

发布者:全栈程序员栈长,转载请注明出处:https://javaforall.cn/162878.html原文链接:https://javaforall.cn