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. 软件调用QML的两种方式

    一.两种方式 二.方式1[对窗口的控制权在QML] 三.方式2[对窗口的控制权在C++]

  2. 一道cf水题

    题意:输入数字n表示字符串中元素个数,字符串中只含有RGB三个字符,现在要求任意两个相同的字符他们的下标之差能整除3. 思路:任意两个相同的字符的下标能整除3,也就是任意三个为一组的字符串当中的字符不 ...

  3. Linux内核中的wake_lock[【转】

    本文转载自:https://blog.csdn.net/wuyb2011/article/details/78542233?locationNum=11&fps=1 #include < ...

  4. openwrt支持哪些c库?

    答: 至2019/3/22,支持两种,一种是glibc,另一种是musl-libc(openwrt默认使用musl-libc)

  5. (zhuan) Recurrent Neural Network

    Recurrent Neural Network 2016年07月01日  Deep learning  Deep learning 字数:24235   this blog from: http:/ ...

  6. Balloons

    题目链接:http://acm.sdibt.edu.cn/JudgeOnline/problem.php?id=2401 类似求连通块的问题,可以参考紫书(P162 油田),对这两个人分别执行dfs. ...

  7. gitlab git

    git网站是进不去的需要加权限才能进去!!!!!!!! 登录进去后 ssh-keygen -t rsa -C "gitlab用户名一般是邮箱" 一路设置好 Use the code ...

  8. 如何用conda安装软件|处理conda安装工具的动态库问题

    conda的确是一个非常好的工具,对于初学者而言,安装软件就跟用XXX软件管理器一样方便.正因为他如此便利,以至于我介绍如何手动安装工具时,总有人问我为啥不用conda. 我用conda,并且用的很好 ...

  9. C++图形开发相关

    1. WxWidgets 2. GTK+ 3. U++ Framework 4. QT

  10. Python 循环与定义函数

    break for i in range(10): if i == 2: break print i 0 1 continue for i in range(10): if i == 2: conti ...