C# StreamReader/StreamWriter类
本章介绍:StreamReader/StreamWriter类;
命名空间:using System.IO
1、StreamReader/StreamWriter类:用来处理流数据,提供了高效的流读写功能。可以直接用字符串进行读写,而不用转换成字节数组。
2、特性
FileStream是操作字节的,因此可以操作包括文本以外的其它各种文件;
StreamReader和StreamWriter是操作字符的,因此只能操作文本文件;
StreamReader和StreamWriter是专门用来操作文件的,如果只针对文件的话,用StreamReader和StreamWriter要比FileStream方便的多。
3、 FileStream类操作的是字节和字节数组,而Stream类操作的是字符数据。
这是这两种类的一个重要区别,如果你是准备读取byte数据的话,用StreamReader读取然后用 System.Text.Encoding.Default.GetBytes转化的话,,则可能出现数据丢失的情况,如byte数据的个数不对等。因此操作byte数据时要用FileStream。
string textContent = fileStream.ReadToEnd();
byte[] bytes = System.Text.Encoding.Default.GetBytes(textContent);
4、public bool EndOfStream { get; } 获取一个值,该值表示当前的流位置是否在流的末尾。
5、//读取数据
FileStream fs = new FileStream(@"demo.txt", FileMode.Open);
StreamReader sr = new StreamReader(fs);
string line = sr.ReadLine();//直接读取一行
sr.Close();
sr.Dispose();
fs.Close();
Console.WriteLine(line);//循环读取文件
static void Main(string[] args)
{string path = @"demo.txt";using (StreamReader sr = new StreamReader(path, Encoding.Default))//使用using 自动释放资源{while (!sr.EndOfStream)//判断是否读完文件{Console.WriteLine(sr.ReadLine());}}Console.ReadKey();
}
6、//写入数据
FileStream fs = new FileStream(@"demo.txt", FileMode.Append);
StreamWriter sw = new StreamWriter(fs);
sw.WriteLine("hello world");
sw.Close();
sw.Dispose();
fs.Close();//这里要注意fs一定要在sw后面关闭,否则会抛异常//或者
static void Main(string[] args)
{//用StreamWriter写入一个文本文件string path = @"demo.txt";using (StreamWriter sw = new StreamWriter(path,false, Encoding.Default)){sw.WriteLine("hello world");}
}
C# StreamReader/StreamWriter类相关推荐
- C# 第七章『I/O数据流』◆第5节:数据流—StreamWriter类、StreamReader类
FileStream类的对象只能以字节的形式读取/写入数据,这就使操作变得非常困难,所以需要借用StreamWriter对象或StreamReader对象的方法来处理文件. 一.StreamWrite ...
- C#使用StreamReader类和StreamWriter类读写文本文件
StreamReader类和StreamWriter类可以实现读写文本文件,这两个类都在命名空间System.IO下. using System; using System.Collections.G ...
- c# 文件IO操作 StreamReader StreamWriter Split 使用
StreamWriter(String,Boolean) 若要追加数据到该文件中,则为 true:若要覆盖该文件,则为 false. 如果指定的文件不存在,该参数无效,且构造函数将创建一个新文件. 例 ...
- C#中的StreamReader/StreamWriter
在读写文件的过程中,Filestream只可以进行以字节为单位原始数据流进行读写操作,为此,C#中提供了功能更加强大的StreamReader/ StreamWriter来支持文件的读写. Strea ...
- C#使用StreamWriter类写入文件文件
除了使用FileStream类读写文本文件,.net还提供了StreamWriter类和StreamReader类专门处理文本文件.这两个类从底层封装了文件流,读写时不用重新编码,提供了更文件的读写方 ...
- C#中FileStream与StreamReader/StreamWriter区别
区别 FileStream类不是静态类,表示在磁盘或网络路径上指向文件的流.这个类提供了在文件中读写字节的方法,但经常使用StreamReader或 StreamWriter执行这些功能.这是因为Fi ...
- C#的StreamWriter类使用说明
C#的StreamWriter类使用说明 一:StreamWriter类简单说明 二:StreamWriter类的构造函数 三:StreamWriter类的字段 四:StreamWriter类的属性 ...
- C# StreamReader/StreamWriter与FileStream用法详解
一.<1>StreamReader类共有10个构造函数 StreamReader (Stream) // 为指定的流初始化 StreamReader 类的新实例. FileStre ...
- 指定得文件初始化StreamWriter类得新实例
Initializes a new instance of the System.IO.StreamWriter class for the specified // stream by using ...
最新文章
- Spring对Hibernate事务管理
- Java JDBC
- Ubuntu 10.04编译安装CodeBlocks 10.5
- dlib+vs2013+opencv实现人脸特征点检测
- Python脚本做接口测试,抛弃接口测试工具是否可行?(一)
- Vue学习笔记(九) Vue CLI
- 搭载麒麟990 5G SoC 华为MatePad Pro 5G全球首发
- 把执行结果转成json对象报错_给Hangfire的webjob增加callback和动态判断返回结果功能设计...
- mysql存储业务日志_MySQL 日志管理
- 目标检测——手把手带你实现SSD(Single Shot MultiBox Detector)训练和检测自己的数据集
- 计算机保研个人简介,保研个人简历模板
- 【机器学习】基于生成对抗网络的黑白图片上色
- 制作自己的微信小程序要怎么做?
- int、time和timestamp区别
- 苏州企业研发费用精准统计难点分析
- C 语言中负数移位运算讲解
- [转]linux shell 正则表达式(BREs,EREs,PREs)差异比较
- 如何去掉“Picked up JAVA_TOOL_OPTIONS: -Djava.vendor=“Sun Microsystems Inc.“” 提示
- 分销商城小程序系统怎么选择?
- ZOJ 3964 Yet Another Game of Stones (博弈)
热门文章
- 勤于奋:国外LEAD的来历,初学者CPA联盟营销
- 开一家300平方米的亲子乐园需要多少钱?看完你就懂了!
- python贪心算法最短路径_贪心算法之最短路径
- 蓝牙btsnoop log,HFP协议连接流程详解,以及RFCOMM连接和常用AT指令
- 一份来自太空的新年礼物——“元旦京港澳天宫对话”活动侧记
- Five features in Bilibili APP
- Vue项目中添加锁屏功能
- 天猫上不靠谱的商品价格
- 【视频课】12小时不一样的高质量Python基础课,推荐给你学习!
- linux修改文件句柄数生效_Linux 修改最大文件句柄数