C# IO流的操作非常重要,我们读写文件都会使用到这个技术,这里先演示一个文件内容复制的例子,简要说明C#中的IO操作。

namespaceConsoleApplication1{classProgram{staticvoidMain(string[]args){//将文件内容读到流中Streamstream=File.Open("test.txt",FileMode.OpenOrCreate);//初始化一个字节数组byte[]bytes=newbyte[(int)stream.Length];//将流读到字节数组中stream.Read(bytes,0,bytes.Length);//用MemoryStream接收MemoryStreamms=newMemoryStream(bytes);//从开始处设置ms.Seek(0,SeekOrigin.Begin);//再把返回的MemoryStream写到另一个文件中去ms.WriteTo(newFileStream("newFile.txt",FileMode.OpenOrCreate));}}}

Stream是一个抽象类,而MemoryStream和FileStream都是Sream的子类。

而下面这个例子则演示了异步读取txt文本内容的方法。

namespaceConsoleApplication1{classProgram{staticvoidMain(string[]args){Console.WriteLine(GetTxt().Result);}///<summary>///异步读取txt文本内容///</summary>///<returns></returns>publicstaticasyncTask<string>GetTxt(){using(Streamstream=File.Open("test.txt",FileMode.OpenOrCreate)){using(StreamReadersr=newStreamReader(stream,Encoding.Default)){returnawaitsr.ReadToEndAsync();}}}}}

关于IO更多的类以及操作请参考:https://msdn.microsoft.com/zh-cn/library/system.io(v=vs.110).aspx。