使用 FileStream 选件类读取,写入,打开和关闭的文件在文件系统和操作其他文件相关的操作系统句柄,包括管道铺设、标准输入和标准输出。可以使用 Read、Write、CopyTo和 Flush 方法执行同步操作或 ReadAsync、WriteAsync、CopyToAsync和 FlushAsync 方法执行异步操作。 使用异步方法执行大量资源文件操作,而不必阻止主线程。 此性能注意事项非常重要。Windows 应用商店 app 或耗时的流操作会阻止 UI 线程并将您的应用程序显示的 桌面 app,就象它不起作用。 缓冲输入和输出以获得更好的性能
例子
废话不说,开始操作。
1.拖好控件、必须滴,将除了要写文件的文本框外,其他的文本框的 ReadOnly 属性均设为 True !
jquery1700010323288557426702="1" />
2.开始"选择文件"操作
代码如下 | 复制代码 |
privatevoid btnReadChoose_Click(object sender, EventArgs e) |
效果图。。。路径就显示出来了。
3.开始"读出"操作,并将文本内容显示在文本框.
其中先写出一个显示“温馨提示”消息的方法
代码如下 | 复制代码 |
#region 显示温馨提示的消息+void MsgShow(string Msg) |
读出操作
代码如下 | 复制代码 |
} |
4.开始"写入"操作,选择文件就不累赘了,差不多.
代码如下 | 复制代码 |
privatevoid btnWriteFile_Click(object sender, EventArgs e) //fs.Write(数据缓存区,从第几个byte开始写,写多少个) MessageBox.Show("异常:"+ ex.Message); |
就这么滴,一个基于文件流FileStream的文本写入、读取小程序就完工了。主要是自己总结
总结
1)读写文件的五个步骤:创建文件流、创建读写器、读写文件、关闭读写器、关闭文件流。
(2)文件流的类是FileStream,创建一个文件流时,需要指定操作文本的路径、文件的打开方式和文件的访问方式。
(3)StreamWriter是一个写入器,StramReader是一个读取器。读写文本文件可以直接使用读写器,不用创建文件流,但是不容易控制文本的打开方式和访问方式
(4)File类用于对文件进行操作,如复制、移动、删除等,Directory类用于对文件夹操作,它们都是静态类。
(5)静态类只包含静态成员,非静态类可以包含静态成员;静态类不能包含实例成员,非静态类可以包含实例成员;静态类使用类名访问其成员,非静态类使用它的实例对象访问成员。
(6)FileInfo类与File类功能类似,也可以完成对文件的基本操作。不同的是File类不可以实例化对象。如果打算多次重用某个文件对象,可以优先考虑使用FileInfo类,因为并不总是需要安全检查
(7)DirectoryInfo类与Directory类功能类似,可以完成对文件夹的基本操作。如果打算多次重用某个目录对象,可以考虑使用DirectoryInfo类的实例方法