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流常用基类 ...
随机推荐
- Unity3D Pro破解
Win破解方法: 全新安装Unity且未打开Unity后!!! 下载程序, 右键管理员运行, 点击Browse选择Unity安装目录内的Editor文件夹, 确定. 然后点击大按钮PATCH即可, 如 ...
- (原)android中的动画(二)
帧动画的使用需要在xml文件中指定每一帧所对应的图片 animation-list写法如下: <?xml version="1.0" encoding="utf-8 ...
- 一、 Java的值传递和引用传递
如果参数类型是原始类型(基本类型),那么传过来的就是这个参数的一个副本,也就是这个原始参数的值,这个跟之前所谈的传值是一样的.如果在函数中改变了副本的值不会改变原始的值. 如果参数类型是引用类型,那么 ...
- BZOJ 1068: [SCOI2007]压缩
Sol 区间DP.这个区间DP需要三维, \(f[i][j][k]\) 表示\([i,j]\) 这个区间中是否存在 \(M\) . 转移有两种,一种是这个区间存在 \(M\) ,那么直接枚举 \(M\ ...
- py代码模糊工具
https://github.com/astrand/pyobfuscate 使用方法,调用下图文件即可,方法 python pyobfuscate.py your_code.py 即可输出在cmd ...
- Maven打包附加配置文件
在build节点下增加resources. <build> <!-- 资源 --> <resources> <!-- 复制非class文件 --> &l ...
- scp和rsync限制传输速度
1.scp 限速100KB/s scp -l 1000 test root@192.168.1.104 此时的传输速率就是1M/8=100KB左右 2.rsync 限速100KB/s rsync -a ...
- JAVA8 十大新特性详解
前言: Java8 已经发布很久了,很多报道表明Java 8 是一次重大的版本升级.在Java Code Geeks上已经有很多介绍Java 8新特性的文章, 例如Playing with Java ...
- C# 读写ini文件
1.添加引用 using System.IO; using System.Runtime.InteropServices; 2.声明API函数 #region API函数声明 [DllImport(& ...
- SQL Server 中几种常见的约束关系
1.创建唯一约束 当表中已创建主键,但又要保证其他数据列的值唯一时,可以使用唯一约束,并且唯一约束允许NULL值(只有一个) (1)展开指定的数据库: (2)右击要创建唯一约束的表,在弹出的快捷菜单中 ...