首页 > 编程语言 >c#中的FileStream文件流

c#中的FileStream文件流

时间:2022-09-21 17:12:51浏览次数:68  
标签:文件 fs 字节 c# FileStream buffer string

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,则返回3
            //三个参数解读: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("写入完成!!");
        }

结果:

 

标签:文件,fs,字节,c#,FileStream,buffer,string
From: https://www.cnblogs.com/zerryLuo/p/16716278.html

相关文章

  • 实验2:Open vSwitch虚拟交换机实践
    一、实验目的1.能够对OpenvSwitch进行基本操作;2.能够通过命令行终端使用OVS命令操作OpenvSwitch交换机,管理流表;3.能够通过Mininet的Python代码运行OVS命令,控制网络拓......
  • 实验2:Open vSwitch虚拟交换机实践
    一、实验目的能够对OpenvSwitch进行基本操作;能够通过命令行终端使用OVS命令操作OpenvSwitch交换机,管理流表;能够通过Mininet的Python代码运行OVS命令,控制网络拓扑中的......
  • docker-集群
    什么是docker集群不同服务实例,来共同提供服务的一组集合,集群集群类型1、先看两个集群例子:nginx集群,redis集群2、然后总结1、对称集群​不同服务实例,功能地位相等......
  • SARscape5.6.2干涉叠加处理效率提升
     SARscape5.6.2于2022年5月正式发布,包含若干更新和优化。干涉叠加处理模块在处理速度方面持续提升,表现在:PS干涉工作流处理、第一次反演和第二次反演优化,速度提升;SBAS处理......
  • C++ 模板类继承
    template<classT>classA{protected:voidTest(){printf("%f",0.1f);}};template<classT>classB:publicA<T>{public:voidTest2()......
  • navicat链接远程数据库
    第一步:宝塔上面查看root,数据库密码。(这就是一整个域名的数据库密码)rootxxxxxx 第二步:navicat添加mysql密码  第三步:ssh(ssh,就是一整个域名的root,和密码) ......
  • 《安富莱嵌入式周报》第283期:全开源逆向“爆破”硬件工具,Linux内核6.1将正式引入RUST
    往期周报汇总地址:http://www.armbbs.cn/forum.php?mod=forumdisplay&fid=12&filter=typeid&typeid=104本周更新视频:BSP视频教程第23期:通过Modbus解析器,轻松掌握Modbus主......
  • ThreadLocal
    ThreadLocal是一个数据结构,有点像HashMap,可以保存key-value键值对,但是一个ThreadLocal只能保存一个,并且各个线程的数据互不干扰。ThreadLocal为变量在每个线程中都创建一个......
  • centos7 安装jq并获取meanResTime和throughput
    用jmeter性能测试之后会产生很多jtl,statistic文件,为了方便做excel表,需要自动读出吞吐率和平均响应时间。1.添加epel源yuminstallwgetwgethttp://dl.fedoraproject.......
  • Clickhouse查看当前连接数
     Clickhouse查看当前连接数 dev-app80:)select*fromsystem.metricswheremetriclike'%Connection%';SELECT*FROMsystem.metricsWHEREmetricLIKE'%C......