c#中的FileStream文件流

static void Main(string[] args)
        {
            //FileStream(操作字节的)
            //1.创建FileStream对象
            FileStream fs = new FileStream(@"D:\桌面\demo.txt",FileMode.OpenOrCreate,FileAccess.Read);
            //三个参数解读:1.操作文件的路径  2.打开文件,没有改文件就创建文件 3.对打开的文件进行什么操作
            byte[] buffer = new byte[1024*1024*5];//5m
            int r=fs.Read(buffer, 0, buffer.Length);//返回实际读取有效的字节数,比如说一个文件只有3M,读到的有效的就只有3M,则返回3M的字节数3*1024*1024
            //三个参数解读:1.读取字符的大小限定 2.从哪里开始读 3.读多少
            //将字节数组中每一个元素按照指定的编码格式解码成字符串
            string str=Encoding.Default.GetString(buffer,0,r);//第二第三个参数表示解码多少个字节(从第0个字节解码到第r个字节)
            //流用完了记得关闭
            fs.Close();
            //释放流所占用的资源
            fs.Dispose();
            Console.WriteLine(str);
        }

运行结果如下:

 

 写文件(与旧文件一个一个字节覆盖,而不会一次性全部覆盖)

static void Main(string[] args)
        {
            //使用FileStream来写入数据
            using(FileStream fs=new FileStream(@"D:\桌面\demo.txt", FileMode.OpenOrCreate, FileAccess.Write))
            {
                string str = "勇士总冠军!!!!!!!!!!!!!!!!";
                byte[] buffer = Encoding.Default.GetBytes(str);
                fs.Write(buffer, 0, buffer.Length);

            }
            Console.WriteLine("写入完成!!");
        }

结果:

 

posted @ 2022-09-21 17:01  ZerryLuo  阅读(258)  评论(0编辑  收藏  举报