http://www.cnblogs.com/liuxinls/archive/2013/02/15/2912968.html

流用于对IO处理

在System.IO名称空间中有以下类

BinaryReader/Writer

TextReader/Writer

Stream

其中类Stream为抽象类。由此有三个派生类:

MemoryStream:对内存进行读取与写入

BufferedStream:对缓冲器进行读取/写入

FileStream:对文件执行读取与写入

TextReader/Writer为抽象类。由此派生类:

StreamReader/StreamWirter

StringReader/StreamWriter

需要引入命名空间:

using System.IO

内存流与缓冲的使用举例:

MemoryStream memStream=new MemoryStream();

BufferedStream bufStream=new BufferedStream(memStream);

byte[] b=new
byte[10];

for(int i=0;i<10;i++)

{

bufStream.WriteByte((byte)i);

}

bufStream.Position=0;

bufStream.Read(b,0,9);

for(int i=0;i<10;i++)

{

Console.WriteLine("读的值是:{0}",b[i]);

}

Console.WriteLine("值是:{0}",bufStream.ReadByte());

Console.ReadLine();

文件流的使用

string s=Console.ReadLine();

FileStream fileStream=new FileStream(s,FileMode.OpenOrCreate);

BinaryWriter binStream=new BinaryWriter (fileStream);

for(int i=1;i<=10;i++)

{

binStream.Write((int)i);

}

binStream.Close();

fileStream.Close();

FileStream f=new FileStream(s,FileMode.Open,FileAccess.Read,FileShare.ReadWrite);

BinaryReader buf=new BinaryReader(f);

for(int i=1;i<10;i++)

{

Console.WriteLine("输出{0}",buf.ReadByte ()); //在vs2012中这样不能读出东西来

位的

}

文本流的使用

string fileName,s;

fileName=Console.ReadLine();

StreamWriter fn=new StreamWriter(fileName,true);

for(int i=1;i<10;i++)

{

s=Console.ReadLine();

fn.WriteLine(s);

}

fn.Close();

StreamReader fr=new StreamReader(fileName);

for(int i=1;i<10;i++)

{

s=fr.ReadLine();

Console.WriteLine(s);

}

fr.Close();

Console.ReadLine();

字符串流的使用

using System.Text;

StringBuilder str=new StringBuilder(100,1000);

StringWriter sw=new StringWriter(str);

for(int i=1;i<5;i++)

{

sw.Write(Console.ReadLine());

}

sw.Close();

Console.WriteLine(sw.ToString());

StringReader sr=new StringReader(sw.ToString());

Console.WriteLine(sr.ReadLine());

Console.ReadLine();

C#流(stream)的更多相关文章

  1. JAVA基础知识之IO——IO流(Stream)的概念

    Java IO 流 Java将不同的设备或载体(键盘.文件.网络.管道等)的输入输出数据统称为"流"(Stream),即JAVA的IO都是基于流的. JAVA传统的所有流类型类都包 ...

  2. [Linux] 流 ( Stream )、管道 ( Pipeline ) 、Filter - 笔记

    流 ( Stream ) 1. 流,是指可使用的数据元素一个序列. 2. 流,可以想象为是传送带上等待加工处理的物品,也可以想象为工厂流水线上的物品. 3. 流,可以是无限的数据. 4. 有一种功能, ...

  3. 【stanford C++】字符串(String)与流(Stream)

    字符串(String)与流(Stream) 一.C++中字符串(String) 字符串(String):就是(可能是空的)字符序列. C++中的字符串在概念上和Java中的字符串类似. C++字符串用 ...

  4. nodeJS之流stream

    前面的话 当内存中无法一次装下需要处理的数据时,或者一边读取一边处理更加高效时,我们就需要用到数据流.NodeJS中通过各种Stream来提供对数据流的操作.本文将详细说明NodeJS中的流strea ...

  5. c#中字节数组byte[]、图片image、流stream,字符串string、内存流MemoryStream、文件file,之间的转换

    字节数组byte[]与图片image之间的转化 字节数组转换成图片 public static Image byte2img(byte[] buffer) { MemoryStream ms = ne ...

  6. Java笔记:Java 流(Stream)、文件(File)和IO

    更新时间:2018-1-7 12:27:21 更多请查看在线文集:http://android.52fhy.com/java/index.html java.io 包几乎包含了所有操作输入.输出需要的 ...

  7. Java - 17 Java 流(Stream)、文件(File)和IO

    Java 流(Stream).文件(File)和IO Java.io包几乎包含了所有操作输入.输出需要的类.所有这些流类代表了输入源和输出目标. Java.io包中的流支持很多种格式,比如:基本类型. ...

  8. Java总结:Java 流(Stream)、文件(File)和IO

    更新时间:2018-1-7 12:27:21 更多请查看在线文集:http://android.52fhy.com/java/index.html java.io 包几乎包含了所有操作输入.输出需要的 ...

  9. 流Stream 文件File 流IO

    Java 流(Stream).文件(File)和IO Java.io 包几乎包含了所有操作输入.输出需要的类.所有这些流类代表了输入源和输出目标. Java.io 包中的流支持很多种格式,比如:基本类 ...

  10. 20180803-Java 流(Stream)、文件(File)和IO

    Java 流(Stream).文件(File)和IO 下面的程序示范了用read()方法从控制台不断读取字符直到用户输入"q". // 使用BufferedReader 在控制台读 ...

随机推荐

  1. centos7 install fastdfs nginx

    https://github.com/judasn/Linux-Tutorial/blob/master/markdown-file/FastDFS-Nginx-Lua-GraphicsMagick. ...

  2. iOS开发 -------- 九宫格坐标计算

    一 要求 完成下面的布局 二 分析 寻找规律,每一个UIView的x坐标和y坐标 三 实现思路 (1) 明确每一块用得是什么View; (2) 明确每个View之间的父子关系,每个视图都只有一个父视图 ...

  3. 关于scrapy 使用代理相关问题

    在scrapy中使用代理时,我们不能保证每个代理都可用,难免出现代理ip错误的情况,如果代理ip出现错误设置一个请求超时和重新发送这个链接 在yield scrapy.Request时候加上一个参数: ...

  4. Bootstrap3基础 nav 便签页(横版、竖版)

      内容 参数   OS   Windows 10 x64   browser   Firefox 65.0.2   framework     Bootstrap 3.3.7   editor    ...

  5. 如何生成指定架构的Linux内核默认配置文件

    答: make ARCH=<cpu architecture> defconfig 举例如下: make ARCH=arm64 defconfig (编译系统将会去目录arch/arm64 ...

  6. (转)Spring Cloud(二)

    (二期)23.微服务框架spring cloud(二) [课程23]熔断器-Hystrix.xmind0.1MB [课程23]微服务...zuul.xmind0.2MB 熔断器-Hystrix 雪崩效 ...

  7. oracle 之 基础操作

    //删除存在的表空间及数据 drop tablespace TS_YYGL including contents and datafiles 若是出现了提示 错误 导致无法全部删除,那么就执行以下语句 ...

  8. Symbol在对象中的作用

    Symbol的打印 我们先声明一个Symbol,然后我们在控制台输出一下. var g = Symbol('jspang'); console.log(g); console.log(g.toStri ...

  9. (转载)C#工具箱Menustrip控件中分割线的设置方法

    最近编C#程序,因为初学,不是太清楚,碰到了toolstripMenu中分割线设置的问题.遍寻中文网页,都是语言不详的,甚是呕人. 上网找了个外文网站,给的答案甚是详细,先贴在下面. http://w ...

  10. Google advertiser api开发概述——部分失败

    部分失败 某些 AdWords 服务允许您请求执行有效操作,而对失败的操作返回错误.此功能(称为部分失败)允许您在结束时单独处理失败的操作. 技术细节 要使用此功能,您需要设置此可选的 SOAP 标头 ...