Winform-FileStream练习之文件保存

这相当于一个学习笔记吧,加强自己对FileStream的掌握。

1.界面设计的很简单 两个button 两个textbox 一个progressbar(读取进度条)

2.界面设计完成了,就开始代码的编写了

   private void button1_Click(object sender, EventArgs e)
        {
            OpenFileDialog ofd = new OpenFileDialog();
            ofd.InitialDirectory = @"C:\Users\YIXICHEN\Desktop";
            //对话框头部
            ofd.Title = "请选择文件";
            //文件类型
            ofd.Filter = "所有文件|*.*";
            ofd.ShowDialog();

            textBox1.Text = ofd.FileName.Trim();
        }

        private void button2_Click(object sender, EventArgs e)
        {
            SaveFileDialog sfd = new SaveFileDialog();
            sfd.InitialDirectory = @"C:\Users\YIXICHEN\Desktop";
            sfd.Title = "请选择保存文件";
            sfd.Filter = "所有文件|*.*";
            sfd.ShowDialog();
            textBox2.Text = sfd.FileName.Trim();
            //使用using 释放资源
            //读取文件内容
            using (FileStream fsRead=new FileStream(textBox1.Text.Trim(),FileMode.OpenOrCreate,FileAccess.Read))
            {
                //写入文件内容
                using (FileStream fsWrite=new FileStream(textBox2.Text.Trim(),FileMode.OpenOrCreate,FileAccess.Write))
                {
                    //设置progressBar的大小
                    progressBar1.Maximum=(int)fsRead.Length;
                    //为了我们给他设置每次读取的大小 5M
                    byte[] buffer = new byte[1024 * 1024 * 5];
                    while (true)
	                {
                        //每次读取r个字节
                        int r = fsRead.Read(buffer, 0, buffer.Length);
                         //当内容不存在的时候 说明内容读取完了
                        if(r==0){
                             break;
                        }        
                        fsWrite.Write(buffer,0,r);
                       //当前读取进度
                        progressBar1.Value =(int) fsWrite.Length;
	                }
                    MessageBox.Show("保存成功");
                  

                }
            }
        }

效果图:

这个简单的保存功能就完成了,欢迎各位大佬指正。谢谢

  • 2
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值