文件类File
常用方法 | 介绍 |
Open() | 打开文件 |
Create() | 创建文件 |
Copy() | 复制文件 |
Delete() | 删除文件 |
Exists() | 判断文件是否存在 |
Move() | 移动文件 |
Replace() | 替换文件 |
AppendAllText() | 新建并添加文本 |
ReadAllText() | 打开并读取文本内容 |
1.读取文件
1.创建一个Filestream 对象 (引入System.IO命名空间)
参数1: 文件路径 参数2:枚举,表示对这个文件进行的操作 参数3:枚举,表示对这个文件里面的数据进行操作
FileStream file=new FileStream("F:\\素材收集\\举例子\\加油.text",FileMode.OpenOrCreate,FileAccess.Read);
2.创建字节数组,用于存放读到的数据
byte[] buffer = new byte[1024 * 1024 * 5];//每次读取5M的数据到内存中,然后保存到字节数组中
3.调取读取方法
参数1:存放数据的字节数组 参数2:开始往字节数组中存放的位置 参数3:每次读取的字节大小
返回值: 本次实际读取的有效字节数,比如:读取一个3.5m的文件,控件虽然是5m空间,实例总返回3.5m
int r=file.Read(buffer, 0, buffer.Length);
4.将字节数组中的每一个元素,按照指定的变革解码或指定格式
参数1:需要解码的数组 参数2:从数组中哪个字节开始解码 参数3:解码的长度
string str=Encoding.UTF8.GetString(buffer,0,r);
Console.WriteLine(str);
5.关闭数据流
file.Close();
6.释放资源
file.Dispose();
7.代码总和
FileStream file=new FileStream("F:\\素材收集\\举例子\\加油.text",FileMode.OpenOrCreate,FileAccess.Read);
byte[] buffer = new byte[1024 * 1024 * 5];
int r=file.Read(buffer, 0, buffer.Length);
string str=Encoding.UTF8.GetString(buffer,0,r);
Console.WriteLine(str);
file.Close();
file.Dispose();
效果展示
2.写入文件
FileStream file1 = new FileStream("F:\\素材收集\\举例子\\Come-On.text", FileMode.OpenOrCreate, FileAccess.Write);
string str1 = "10.1-5.1,一定加油";
byte[] buffers = Encoding.UTF8.GetBytes(str1);
file1.Write(buffers, 0, buffers.Length);
Console.WriteLine(str1);
效果展示
驱动器
DriveInfo类的常用字段成员有
DriveFormat(文件系统格式,如NTFS或FAT32)
DriveType(驱动器类型)、Name(驱动器名)
TotalSize(总空间)
TotalFreeSpace(获得驱动器可用空间)
常用的方法成员有GetDrives(获得可用驱动器列表)
DriveInfo[] driveInfos = DriveInfo.GetDrives();
foreach (DriveInfo driveInfo in driveInfos)
{
if(driveInfo.DriveType==DriveType.Fixed && driveInfo.DriveFormat=="NTFS")
{
Console.WriteLine($"在{driveInfo.Name}驱动器上还有{driveInfo.AvailableFreeSpace}字节剩余空间");
}
}
Console.ReadLine();
二进制流
1.创建二进制流写入
FileStream file3 = new FileStream("text.txt", FileMode.Create, FileAccess.Write);
//创建二进制流写入实例
BinaryWriter bw = new BinaryWriter(file3,Encoding.UTF8);
bw.Write(Encoding.UTF8.GetBytes("0"));
bw.Write(0.11);
bw.Write(true);
bw.Write(Encoding.UTF8.GetBytes("加油"));
Console.WriteLine(bw);
Console.WriteLine(file3);
bw.Flush();
bw.Close();
file3.Close();
2.创建二进制流读取
FileStream file4 = new FileStream("text.txt", FileMode.Open, FileAccess.Read);
BinaryReader br = new BinaryReader(file4, Encoding.UTF8);
Console.WriteLine(br.ReadBoolean());
Console.WriteLine(br.ReadInt32());
Console.WriteLine(br.ReadString());
File类的常用方法
常用方法 | 介绍 |
Open() | 打开文件 |
Create() | 创建文件 |
Copy() | 复制文件 |
Delete() | 删除文件 |
Exists() | 判断文件是否存在 |
Move() | 移动文件 |
Replace() | 替换文件 |
AppendAllText | 新建文件并添加文本 |
ReadAllText() | 打开并读取文本内容 |