File,FileInfo,FileStream,StreamReader的区别与用法
2010-03-20 23:53
537 查看
刚开始学习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是用于文件 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的区别与用法
- File,FileInfo,FileStream,StreamReader的区别与用法
- C#文件与流(FileStream、StreamWriter 、StreamReader 、File、FileInfo、Directory、DirectoryInfo、Path、Encoding)
- StreamReader和StreamWrite和FileStream区别和用法
- StreamReader和StreamWrite和FileStream区别和用法
- C#文件与流(FileStream、StreamWriter 、StreamReader 、File、FileInfo、Directory、directoryInfo、Path、Encoding)
- c#FileStream文件读写.以及filestream,file和FileInfo的区别
- StreamReader和StreamWrite和FileStream区别和用法
- c# File、FileInfo、Directory、DirectoryInfo、FileStream、StreamWriter、StreamReader的使用
- 文件操作类StreamWriter 、StreamReader、FileStream 、File、FileInfo 、DirectoryInfo 、Directory
- SHGetFileInfo 函数用法
- man .info .--help的用法和区别
- File和FileInfo的区别
- FileInfo和file的区别
- C#学习笔记——StreamWriter、StreamReader和FileStream区别
- SHGetFileInfo的用法
- C#中 File,Directory,FileInfo,DirectoryInfo区别与应用
- man .info .--help的用法和区别
- C#对文件/目录的操作:Path、File、Directory、FileStream、StreamReader、StreamWriter等类的浅析