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. Git本地分支和远程分支关联

    转载:https://blog.csdn.net/cherishhere/article/details/52606884 转载:https://blog.zengrong.net/post/1746 ...

  2. Junit 的Assertions的使用

    import static org.hamcrest.CoreMatchers.allOf; import static org.hamcrest.CoreMatchers.anyOf; import ...

  3. Bootstrap3基础 btn-xs/sm... 按钮的四种大小

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

  4. Ubuntu 汉字显示一半的修复

    部分汉字(例如“复”)显示不正常,只显示一半,其原因是Ubuntu采用的字体Noto Sans CJK优先显示日文汉字,这一问题可以通过修改配置文件/etc/fonts/conf.avail/64-l ...

  5. c# 之系统环境安装

    在重装系统后,对一些原有软件进行了卸载,不知道是什么原因总是提示vs2015 需安装IE10,但是又碰到ie10的一些插件不适合此系统.网上介绍的vs修复没有任何作用 最后找到方法是:重装系统,然后不 ...

  6. 论文笔记:Person Re-identification with Deep Similarity-Guided Graph Neural Network

    Person Re-identification with Deep Similarity-Guided Graph Neural Network 2018-07-27 17:41:45 Paper: ...

  7. gulp结合webpack开启多页面模式,配置如下

    首先老规矩哈.全局包安装先 cnpm install webpack -g cnpm install gulp -g cnpm install babel -g //转换Es6 上面的整合在一起安装可 ...

  8. Neo4j 文档

    Graph Fundamentals 基础 Basic concepts to get you going. A graph database can store any kind of data u ...

  9. java.lang.OutOfMemoryError:GC overhead limit exceeded

    在调测程序时报java.lang.OutOfMemoryError:GC overhead limit exceeded 错误 错误原因:在用程序进行数据切割时报了该错误.由于在本地执行数据切割测试的 ...

  10. linux lsof/netstat查看进程和端口号相关命令:

    本文为博主原创,未经允许不得转载: 在linux操作时,经常要查看运行的项目的进程和端口号,在这里总结了以下常用到的相关命令: 1.查看系统运行的java项目,并查看进程号 这个用到的命令为: ps ...