File,FileInfo,FileStream,StreamReader的区别与用法
来源:互联网 发布:python 字典值为数组 编辑:程序博客网 时间:2024/05/29 23:47
刚开始学习C#,写一些简单的控制台应用程序:主要是读入文件,处理,然后写入文件。
一直对于File,FileInfo,FileStream,StreamReader的概念和用法都很混乱,今天就了解的总结一下。
概括的说,File,FileInfo,FileStream是用于文件 I/O 的类,StreamReader是用于从流读取和写入流的类,使用之前都需using System.IO。
先定义一个TXT文档路径: string txtpath = (@"D:/C#练习/1.txt"); 要读入这个文档。
(1)File 提供用于创建、复制、删除、移动和打开文件的静态方法,并协助创建 FileStream。
FileStream fs = File.Open(txtpath, FileMode.Open);
File可以直接调用各种方法(Open、Delete、Exists等)
例如: if (File.Exists(txtpath))
{
File.Delete(txtpath);
}
(2)FileInfo 提供用于创建、复制、删除、移动和打开文件的实例方法,并协助创建 FileStream。
FileInfo fi = new FileInfo(txtpath); //实例化
FileStream fs = fi.Open();
(3)FileStream 支持通过其 Seek 方法随机访问文件。默认情况下,FileStream 以同步方式打开文
件,但它也支持异步操作。
利用FileStream 我们可以得到一个文件的Streams,接着就是来读取。
(4)StreamReader 通过使用 Encoding 进行字符和字节的转换,从 Streams 中读取字符。
StreamWriter 通过使用 Encoding 将字符转换为字节,向 Streams 写入字符。
StreamReader sr = new StreamReader(fs);
string str = null;
string temp=null;
while((temp=sr.ReadLine())!=null)
{
str+=" "+temp;
}
得到一个字符串,再可以对字符串进行处理。
PS:
TextReader 是 StreamReader 和 StringReader 的抽象基类。抽象 Stream 类的实现用于字节输入和输出,而 TextReader 的实现用于 Unicode 字符输出。
TextWriter 是 StreamWriter 和 StringWriter 的抽象基类。抽象 Stream 类的实现用于字节输入和输出,而 TextWriter 的实现用于 Unicode 字符输出。
- File,FileInfo,FileStream,StreamReader的区别与用法
- File,FileInfo,FileStream,StreamReader的区别与用法
- c# File、FileInfo、Directory、DirectoryInfo、FileStream、StreamWriter、StreamReader的使用
- C#文件与流(FileStream、StreamWriter 、StreamReader 、File、FileInfo、Directory、DirectoryInfo、Path、Encoding)
- 文件与流(FileStream、StreamWriter 、StreamReader 、File、FileInfo、Directory、DirectoryInfo、Path、Encoding)
- 文件操作类StreamWriter 、StreamReader、FileStream 、File、FileInfo 、DirectoryInfo 、Directory
- file与fileinfo的区别
- c#FileStream文件读写.以及filestream,file和FileInfo的区别
- C# byte及char FileStream 与StreamReader的区别
- C# byte及char FileStream 与StreamReader的区别
- C# StreamReader/StreamWriter与FileStream用法详解
- C# StreamReader/StreamWriter与FileStream用法详解
- StreamReader/StreamWriter与FileStream用法详解
- StreamReader/StreamWriter与FileStream用法详解
- C# StreamReader/StreamWriter与FileStream用法详解
- C# FileStream/StreamWriter/StreamReader的区别
- C# FileStream/StreamWriter/StreamReader的区别
- StreamReader和StreamWrite和FileStream区别和用法
- 我们应该考虑的问题
- 自我简介
- 巨人网络笔试题
- C#socket类初步了解(客户端与服务端的建立)
- Linux 技巧:重定向 stderr 和 stdout 输出到 gdb 窗口 挺不错 特别是里面的call调用
- File,FileInfo,FileStream,StreamReader的区别与用法
- Com/Dcom/Com+的思考
- GetMemory问题
- Unix下安装mysql
- .net oracleClient oracle9 客户端 链接oracle10G 服务器 server_name 不正确的 解决办法
- ubuntu 9.10 无法上网及pppoeconf的设置
- Oracle Foreign key
- 初恋女友VS现任女友
- Oracle Constraint