C#回顾 - 3.NET的IO:字节流
使用 Stream 类管理字节流
使用 FileStream 类管理文件数据
使用 MemoryStream 类管理内存数据
使用 BufferedSream 类提高流性能
3.1
FileStream

MemoryStream
Seek 定位,寻址

BufferedStream

3.2 管理应用程序数据
文本、流、字符串和二进制数据
管理文本数据和字符串
(1)TextReader 类 (抽象类)
(2)TextWriter 类 (抽象类)
管理字符串
使用 binaryReader 和 BinaryWrter 管理二进制数据


3.2.1.文件操作
//真的关联到某一个文件
//StreamReader对文本文件:读 <--父类:Stream
//StreamWriter对文本文件:写 <--父类:Stream
string file = @"F:\text.txt";
FileStream fs = File.Open(file, FileMode.OpenOrCreate);
StreamWriter sw = new StreamWriter(fs); sw.WriteLine("现在是:{0},", DateTime.Now);
sw.Flush();
sw.Close(); StreamReader sr = new StreamReader(File.Open(file, FileMode.Open));
Console.WriteLine(sr.ReadToEnd());

3.2.2.字符串操作
//在内存中,把string当作文件来操作
//StringReader对string:读 <--TextReader
//StringWriter对string:写 <--TextWiter
StringBuilder sb = new StringBuilder(); StringWriter sws = new StringWriter(sb);
sws.WriteLine(123 + 321);
sws.WriteLine(true);
StringReader srr = new StringReader(sb.ToString());
Console.WriteLine(srr.ReadToEnd());

3.2.3.二进制操作
//二进制
BinaryWriter bw = new BinaryWriter(File.Open(@"F:\a.dat", FileMode.OpenOrCreate));
bw.Write(true);
bw.Write('A');
bw.Write(123); bw.Flush();
bw.Close(); //读取的时候要按照顺序
BinaryReader br = new BinaryReader(File.Open(@"F:\a.dat", FileMode.Open));
Console.WriteLine(br.ReadBoolean()); //对应true
Console.WriteLine(br.ReadChar()); //对应'A'
Console.WriteLine(br.ReadInt32()); //对应123


C#回顾 - 3.NET的IO:字节流的更多相关文章
- JAVA IO 字节流与字符流
文章出自:听云博客 题主将以三个章节的篇幅来讲解JAVA IO的内容 . 第一节JAVA IO包的框架体系和源码分析,第二节,序列化反序列化和IO的设计模块,第三节异步IO. 本文是第一节. ...
- C#回顾 - 2.NET的IO:Path、File、FileInfo、Directory、DirectoryInfo、DriveInfo、FileSystemWatcher
1.管理文件系统 一般而言,应用程序都会有保存数据.检索数据的需求. 1.1 使用 path 类来访问文件路径 [path常用的方法]:http://www.cnblogs.com/tangg ...
- Java学习之IO字节流
字节流分为FileInputStream 和FileOutputStream package com.io; import java.io.File; import java.io.FileInput ...
- Java提高篇(二):IO字节流、字符流和处理流
在我们的Java语言当中,通常会有对文件进行读写,因此我们引入java的IO类来进行文件的读写. 一.字节流 下面是一个字节流的实例: import java.io.*; public class I ...
- Java学习笔记28(IO字节流)
IO定义: 写:Output操作:将内存上的数据持久化 到设备上,这个动作称为输出: 读:Input操作:把硬盘上的东西读取到内存,这个动作称为输入: 这两种操作称为IO流 ...
- 14、IO (字节流、字符流)
输入和输出 * A:输入和输出 * a: 参照物 * 到底是输入还是输出,都是以Java程序为参照 * b: Output * 把内存中的数据存储到持久化设备上这个动作称为输出(写)Output操作 ...
- IO字节流。
字节输出流: java.io.OutputStream :抽象类,是表示输出字节流的所有类的父类. java.io.FileOutputStream extends OutputStream: 文件字 ...
- Java IO 字节流与字符流 (五)
Java的IO流分为字符流(Reader,Writer)和字节流(InputStream,OutputStream),字节流顾名思义字节流就是将文件的内容读取到字节数组,然后再输出到另一个文件中.而字 ...
- Java IO 字节流与字符流 (三)
概述 IO流用来处理设备之间的数据传输 Java对数据的操作时通过流的方式 Java用于操作流的对象都在IO包中 流按操作的数据分为:字节流和字符流 流按流向不同分为:输入流和输出流 IO流常用基类 ...
随机推荐
- ruby on rails validates uniqueness
最近在处理一个小功能,每个元素可以有多个图片,每个图片的name表示了它是背景图还是海报图, 需要对每个元素的图片name做一个唯一性验证,一个元素不能添加两个海报图, 需要使用的是validates ...
- word20161129
1. nested 英[nestɪd]美[nestɪd]adj. 嵌套的;v. 筑巢( nest的过去式和过去分词 );[例句]In the makeGrades method I use a cod ...
- r-cnn学习系列(三):从r-cnn到faster r-cnn
把r-cnn系列总结下,让整个流程更清晰. 整个系列是从r-cnn至spp-net到fast r-cnn再到faster r-cnn. RCNN 输入图像,使用selective search来构造 ...
- Apache 无法启动
本人是做前端开发的,对后台程序不太熟悉,也就以前学过一点.net.但现在都忘记的差不多了.最近在公司,经理给了我一个管理工具dedecms,我刚开始看的时候完全不懂这是什么东西,之前都没听说过(本人见 ...
- Intel项目所用jquery小知识点总结
1.$("#tdGeo input[type='checkbox']:checked") ---筛选出所有已经Check的Checkbox 2.$("#tdCount ...
- pl/sql中having的用法
HAVING的作用: 因为where关键字无法与聚集函数一起使用,HAVING可以和聚集函数一起使用 HAVING的语法: SELECT column_name, aggregate_function ...
- C++中string,wstring,CString的基本概念和用法
一.概念 string和CString均是字符串模板类,string为标准模板类(STL)定义的字符串类,已经纳入C++标准之中.wstring是操作宽字符串的类.C++标准程序库对于string的设 ...
- Java集合中List的用法
List接口是Collection接口的子接口,List有一个重要的实现类--ArrayList类,List中的元素是有序排列的而且可重复,所以被称为是序列. List可以精确的控制每个元素的插入位置 ...
- switch/ifelse 使用总结
2015年3月30日 14:12:36 switch 中的 default 和 if/else 中最后的 else 尽可能的不要用 1. 不要default, 不要写默认处理逻辑, default ...
- Django~static files
such as images, JavaScript, or CSS https://docs.djangoproject.com/en/1.9/howto/static-files/ django. ...