C#中流的读写器BinaryReader、BinaryWriter,StreamReader、StreamWriter详解
来源:互联网 发布:java驻场开发怎么样 编辑:程序博客网 时间:2024/06/05 10:58
主要是因为文件流对象在读写字节的效率是相当高的,但是在处理其他类型的数据时会比较麻烦,
所以就出现了二进制读写器和文本读写器来解决这一问题。
-----------YYC
BinaryWriter,BinaryReader都是以二进制的方式来操作流的,所以都是基于(Stream Output,Stream Input)流的对象来创建读写器对象
其中流的移动是一字节为单位的
BinaryWriter bw = new BinaryWriter(fsl);
bw.Write(101);
bw.Write(3.14);
bw.Write("aaa");
bw.Flush();//清空系统缓存区,使缓存区的数据全部写入物理文件中
bw.Write(new char[] {'A','B','C','D'});
bw.Write(DateTime.Now.ToString());
bw.Close();
fsl.Close();
fsl = File.Open("E:\\a.txt",FileMode.Open,FileAccess.ReadWrite);
BinaryReader br = new BinaryReader(fsl);
int a = br.ReadInt32();
double b = br.ReadDouble();
/*注意此处a,b读取的顺序不能乱
*否则会出现乱码
*/
br.Close();
fsl.Close();
MessageBox.Show(a.ToString()+" "+b.ToString());
文本读写器StreamReader、StreamWriter是以文本流方式来对流进行读写操作
所以也需要利用流对象来创建读写器对象*/
FileStream fsl = File.Open("E:\\a.txt",FileMode.Open,FileAccess.ReadWrite);
StreamWriter sw = new StreamWriter(fsl);
sw.Write(22);
sw.Write(1.111);
sw.Write("qqq");
sw.WriteLine("aaaa");
sw.Close();
fsl.Close();
fsl = File.Open("E:\\a.txt", FileMode.Open, FileAccess.ReadWrite);
StreamReader sr = new StreamReader(fsl);
string a = sr.ReadToEnd();
MessageBox.Show(a);
文本读写器和二进制读写器的关系
首先两者都是基于流来操作文件进行读写的,但前者是以二进制的方式来进行的,前者写入文件后双击打开会是乱码,读写都要更具
具体的数据类型来操作流的位置。后者则是以文本方式来操作文件的读写的,文本读写器中写入时更具具体数据类型来操作流的位置,
但写入具体文件中的却是字符串的文本格式,双击打开该文件是可以阅读的,同时在运用StreamReader对象进行读取时,就不能以具体类型大小来
操作流的位置了,而是以字符大小为单位操作流的位置的,读出来的也是一个字符串,而不是具体类型
- C#中流的读写器BinaryReader、BinaryWriter,StreamReader、StreamWriter详解
- C# BinaryWriter/BinaryReader、FileStream 、StreamWriter/StreamReader
- FileStream和StreamReader,StreamWrite,BinaryWriter和BinaryReader的用法
- BinaryWriter和BinaryReader(二进制文件的读写)
- BinaryWriter和BinaryReader(二进制文件的读写)
- c#读写文件的几种方式StreamReader、StreamWriter、FileStream
- C#中StreamWriter与BinaryWriter的区别
- C# StreamReader/StreamWriter与FileStream用法详解
- C# StreamReader/StreamWriter与FileStream用法详解
- C# StreamReader/StreamWriter与FileStream用法详解
- c#二进制流的读和写(BinaryReader,BinaryWriter)
- C#中流写入类StreamWriter的介绍
- C#中流写入类StreamWriter的介绍
- C# FileStream/StreamWriter/StreamReader的区别
- C# FileStream/StreamWriter/StreamReader的区别
- BinaryReader, BinaryWriter,按二进制模式读写
- C#中的StreamReader/StreamWriter
- C#中的StreamReader/StreamWriter
- 康托展开与逆展开
- POJ3664
- 中东部还是阴霾得很严重呀
- Matlab中龙格-库塔(Runge-Kutta)方法原理及实现
- JDBC 数据库批处理操作
- C#中流的读写器BinaryReader、BinaryWriter,StreamReader、StreamWriter详解
- Ubuntu下中文乱码解决方案
- C++各大有名科学计算库(转)
- 虚拟内存
- Java Spring Tutorial -- autowire自动装配
- oracle查询数据库名、实例名、ORACLE_SID
- 【代码】Flex图层筛选
- 回调机制与好莱坞原则
- 【iOS开发必收藏】详解iOS应用程序内使用IAP/StoreKit付费、沙盒(SandBox)测试、创建测试账号流程!【2012-12-11日更新获取"产品付费数量等于0的问题"】