System.IO命名空间,用于文件/流的处理。
主要类的介绍:
1 Path类——静态实用类,用于处理路径名称。
2 File类和FileInfo类
● File —— 静态实用类,提供许多静态方法,用于移动、复制和删除文件。
● FileInfo —— 表示磁盘上的物理文件,具有处理此文件的方法。要完成对文件的读写工作,就必须创建Stream对象。
3 Directory类和DirectoryInfo类
● Directory —— 静态实用类,提供许多静态方法,用于移动、复制和删除目录
● DirectoryInfo —— 表示磁盘上的物理目录,具有处理此目录的方法。
4 FileStream类和FileStreamInfo类
● FileStream —— 表示可写或可读,或二者均可的文件。此文件可以同步或异步地读写。
● FileStreamInfo —— 用作FileInfo和DirectoryInfo的基类,可以使用多态性同时处理文件和目录。
5 StreamReader类和StreamWriter类
● StreamReader —— 从流中读取字符数据,可以使用FileStream创建为基类。
● StreamWriter —— 向流写入字符数据,可以使用FileStream创建为基类。
6 BinaryReader类和BinaryWriter类
● BinaryReader ——从流中读取二进制数据
● BinaryWriter ——向流中写入二进制数据
7 MemoryStream类和BufferedStream类
● MemoryStream——用于向内存读写数据
● BufferedStream——用于读写缓冲区数据
8 FileSystemWatcher类
● FileSystemWatcher ——用于监控文件和目录,提供了这些文件和目录发生变化时应用程序可以捕获的事件。在Windows编程技术中缺乏此功能,但是现在.NET Framework很容易对文件系统事件作出响应。
File类与FileInfo类区别,
File类是静态的,FileInfo不是静态的也没有静态的方法,仅可用于实例化的对象。
FileInfo方法基本类似于File。关于二者,作何选择。
● 如果仅进行单一方法调用,则可以使用静态File类上的方法。在此,单一调用要快一些,因为.NET Framework不必实例化新对象,再调用方法。
● 如果应用程序在文件上执行几种操作,则实例化FileInfo对象并使用其方法就更好一些。这会节省时间,因为对象已在文件系统上引用正确的文件,而静态类必须每次都寻找文件。
DirectoryInfo类与Directory区别
●如果进行单一调用,就使用静态Directory类。
●如果进行一系列调用,则使用实例化的DirectoryInfo。
System.IO命名空间,用于文件/流的处理。的更多相关文章
- C# System.IO和对文件的读写操作
System.IO命名空间中常用的非抽象类 BinaryReader 从二进制流中读取原始数据 BinaryWriter 从二进制格式中写入原始数据 BufferedStream 字节流的临时存储 ...
- 【等待事件】等待事件系列(3+4)--System IO(控制文件)+日志类等待
[等待事件]等待事件系列(3+4)--System IO(控制文件)+日志类等待 1 BLOG文档结构图 2 前言部分 2.1 导读和注意事项 各位技术爱好者,看完本文后,你可 ...
- C#使用System.IO.Path获取文件路径、文件名
class Program { static void Main(string[] args) { //获取当前运行程序的目录 string fileDir = Environment.Current ...
- .NET中的IO操作之文件流
读操作 //1.创建文件流 FileStream fsRead =new FileStream("1.txt",FileMode.Open); //2.创建缓冲区,正常情况下,是不 ...
- .NET中的IO操作之文件流(一)
读操作 //1.创建文件流 FileStream fsRead =new FileStream("1.txt",FileMode.Open); //2.创建缓冲区,正常情况下,是不 ...
- System.IO命名空间下常用的类
System.IO System.IO.Directory 目录 System.IO.Path 文件路径(包含目录和文件名) System.IO.FileInfo 提供创建.复制.删除.移动和打开文件 ...
- Syste.IO命名空间下的流操作类之间的关系
- 12 文件流(Unity3D)
关于文件操作在脚本中可以通过xml或其他的与文件相关的类中封装的一些方法可读取本地Asset文件夹下的xml文档和json文档到游戏中.但是这样操作文件难免会有拖延,C#提供了一种文件操作的方法, ...
- 【基础巩固】文件流读写、大文件移动 FileStream StreamWriter File Path Directory/ ,m资料管理器(递归)
C#获取文件名 扩展名 string fullPath = @"d:\test\default.avi"; string filename = Path.GetFileName(f ...
随机推荐
- MVC创建
[1]创建ASP.NET_MVC应用程序 1>新建项目>web>Visual Studio 2012>ASP.NET MVC4 Web应用程序 2>填写名称,位置 ...
- PIE使用阴影后的背景透明方法
使用PIE后,会发现如果有设置 box-shadow 时,当前 class 样式中设置 opacity 或者背景渐变透明都会无效了,其实也是有办法解决的 css3-container { filter ...
- display:inline-block和float:left的选择
参考文章: http://www.zhangxinxu.com/wordpress/2010/11/%E6%8B%9C%E6%8B%9C%E4%BA%86%E6%B5%AE%E5%8A%A8%E5%B ...
- 《JS权威指南学习总结--开始简介》
本书共分成了四大部分: 1.JS语言核心 2.客户端JS 3.JS核心参考 4.客户端JS核心参考 其中 <JS权威指南学习总结--1.1语法核心> 是:第一部分JS语言核心 各章节重点 ...
- <? extends T>和<? super T>
转自:Java泛型中extends和super的区别? 另,问题来源:Java 泛型 <? super T> 中 super 怎么 理解?与 extends 有何不同? <? ext ...
- mysql导出数据表结构,必须退出mysql命令.重新使用msyqldump命令
只导出数据库中所有表结构(-d 减去数据) 导出所有表结构和数据 mysqldump -uroot --default-character-set=utf8 -p123-d必须空格good>H: ...
- openwrt启动过程(脚本)
来源: http://wiki.openwrt.org/doc/techref/preinit_mount#first.boot 基本的openwrt启动顺序为: 1.boot loader loa ...
- CentOS postgresql9.4
yum install http://yum.postgresql.org/9.4/redhat/rhel-6-x86_64/pgdg-redhat94-9.4-1.noarch.rpm Once t ...
- LeetCode OJ 289. Game of Life
According to the Wikipedia's article: "The Game of Life, also known simply as Life, is a cellul ...
- logrotate日志轮转配置文档
转自:http://blog.163.com/bull_linux/blog/static/2138811422013101334544349/ 使用: logrotate CONF_FILE+ ...