《BufferedStream》
BufferedStream 缓存区存储对象,特点读取性能比较快的,也需要包装其他文件流(FileStream),读取只有一个类
//1创建临时存储对象
BufferedStream buff = new BufferedStream(File.Create(@"1.txt"));
//2写入内容 传递一个字节数组
byte[] infol = new UTF8Encoding().GetBytes("床前明月光,疑是地上霜,举头望明月,低头思故乡");
buff.Write(infol,0,infol.Length);//从字节数组的0位置开始写 写字节数组长度内容
byte[] info2 = new UTF8Encoding().GetBytes("Good good study day");
buff.Write(info2, 0, info2.Length);//从字节数组的0位置开始写 写字节数组长度内容
byte[] info3 = new UTF8Encoding().GetBytes("oiisfgcahfjishgydweydwhj");
buff.Write(info3, 0, info3.Length);//从字节数组的0位置开始写 写字节数组长度内容
buff.Flush();
buff.Close();
//3创建读取存储对象
buff = new BufferedStream(File.OpenRead(@"1.txt"));
byte[] arr = new byte[buff.Length];//定义数组存储读取的数据 长度为缓存区的大小
while (buff.Read(arr,0,arr.Length)>0)//如果数据没读完 继续读
{
Console.WriteLine(Encoding.UTF8.GetString(arr)); //把arr转成字符串进行展示
}
《Directory》
Directory:提供一些处理文件夹的操作的属性和方法
DirectoryInfo:设置文件夹属性的类 例如隐藏文件夹,只读文件夹等属性
//1创建文件夹 创建在Debug文件下 Image/OK这样的目录
Directory.CreateDirectory(@"Image/OK");
//2 Exists判断文件路径是否存在
if (!Directory.Exists(@"Config"))
{
Console.WriteLine("1111111");
Directory.CreateDirectory(@"Config");
}
//3\C:\Users\10229\source\repos\第十九天\02Directoy文件夹操作对象\bin\Debug
//GetCurrentDirectory()获取当前目录 是一个绝对路径
//4Delete()删除文件夹的时候 参数2位true,可以删除目录以及子目录:参数2位false的话,如果有子目录,不允许删除
//5 Move() 把参数1位置文件或者是文件夹 移动到参数2这个位置上
//6Directory.GetDirectories()获取当前目录子目录
//7 GetFiles获取文件的
string[] pas= Directory.GetFiles("C:\\Users\\10229\\source\\repos\\第十九天\\02Directoy文件夹操作对象\\bin\\Debug");
foreach (var item in pas)
{
Console.WriteLine(item+"-------");
}
//8
DirectoryInfo info = new DirectoryInfo(@"新建文件夹");
//Attributes属性
info.Attributes=FileAttributes.Hidden;//
《StreamReader和StreamWriter》
// BinaryReader br=new BinaryReader(,)//二进制读取原始数据参数是文件流,必须借助filestream,有时候会出现文档内容出现乱码
//StreamReader 读取流,实现文件读取功能
//using(),声明一个块级的作用域,在声明的变量,在{}体之后已经被释放
using (StreamReader sr = new StreamReader(@"1.txt", Encoding.UTF8))
{
//sr.ReadLine();读取一行
string lines;
while ((lines = sr.ReadLine()) != null)//一行一行去读,如果读取这一行赋值lines,并且lines==null证明读取完了
{
Console.WriteLine(lines);
}
}
using (StreamWriter sw = new StreamWriter(@"2.txt"))
{
sw.WriteLine("平安夜当时每个姓氏要一块钱,从一号要24号 凑24 买一个苹果");
}