1.用C#程序读写一个文件需要以下5个基本内容:
①创建文件流
②创建阅读器或者写入器
③执行读写操作
④关闭阅读器或者写入器
⑤关闭文件流
2.using System.IO:这个命名空间用于文件和文件流的处理
3.Create:用指定的名称新建一个文件。如果文件存在,则改写旧文件
CreateNew:新建一个文件,如果文件存在会发生异常,提示文件已经存在
Open:打开一个文件。使用这个枚举值时,指定的文件必须存在,否则会发生异常
OpenOrCreate:OpenOrCreate和Open成员类似,只是如果文件不存在,则用指定的名称新建一个文件并打开它
Append:打开现有文件,并在文件末尾追加内容
4.关闭文件流
写入结束后一定关闭文件流myfs.Close();
5.关于StreamWrite写入器:
StreamWrite.Write():用于写入流,这个流就是我们创建好的流
StreamWrite.WriteLine():用于写入一行数据,写入某些数据后跟换行符
StreamWrite.Close():用于关闭写入器
6.StreamReader读取器
StreamReader主要用于读取流中的数据,它主要包含以下几种方法
StreamReader.ReadLine():读取文件流中的一行数据,并返回字符串
StreamReader.ReadToEnd():从当前位置读到末尾,返回字符串
StreamReader.Close():用于关闭读取器
7.Encoding类位于System.Text命名空间,用来表示字符编码
①可以通过Encoding类的静态成员指定编码格式。例如:
Encoding.UTF8:获取UTF-8格式的编码。
Encoding.Default:获取操作系统的当前编码
②也可以通过Encoding类的静态方法GetEncoding(string name)指定字符编码,参数name必须是C#支持的编码名,例如:
StreamReader mySr=new StreamReader(myfs,Encoding.GetEncoding("GB520"));
8.File类和Directory类
9.静态类鱼非静态类的区别
-------------------------------------|---------------------------------------------------
静态类 | 非静态类
------------------------------------ |----------------------------------------------------
用static修饰 | 不用static修饰
-------------------------------------|---------------------------------------------------
只包含静态成员 | 可以包含静态成员
-------------------------------------|----------------------------------------------------
不可以包含实例成员 | 可以包含实例成员
-------------------------------------|----------------------------------------------------
使用类名调用静态成员 | 使用实例对象调用非静态成员
-------------------------------------|----------------------------------------------------
不能被实例化 | 可以被实例化
-------------------------------------|-----------------------------------------------------
不能包含实例构造函数 | 包含实例构造函数
-------------------------------------|-----------------------------------------------------
10.FileInfo类的属性和方法
属性
Exists:用于检查指定文件是否存在,返回一个布尔值
Extension:获取表示文件扩展名部分的字符串
Name:获取文件名
FullName:获取目录或文件的完整目录
返回值类型 方法
FileInfo CopyTo(string):将现有文件复制到新文件,不允许覆盖现有文件
void Delete():永久删除文件
void MoveTo(string):将指定文件移到新位置(string)
11.DirectoryInfo类的两个重要方法:
①GetDirectories():该方法返回当前目录的子目录对象数组。
②GetFiles():该方法返回当前目录和文件列表(FileInfo对象数组)。
12.