zoukankan      html  css  js  c++  java
  • 用FileStream加byte[]字节数组缓冲区读写文件

    using System;
    using System.Collections.Generic;
    using System.IO;
    using System.Linq;
    using System.Text;
    using System.Threading.Tasks;
    
    namespace ConsoleApplication3
    {
        class Program
        {
            static void Main(string[] args)
            {
                //思路:就是现将要赋值的多媒体文件读取出来,然后希望如到你制定的位置
                string source = @"D:教程1.txt";
                string target = @"D:教程2.txt";
                CopyFile(source, target);
                Console.WriteLine("Copy Complete!");
                Console.ReadKey();
            }
            public static void CopyFile(string source,string target)
            {
                //1。我们创建一个负责读取的流 fsRead
                using(FileStream fsRead = new FileStream(source,FileMode.OpenOrCreate,FileAccess.Read))
                    //使用using语句减免代码,FileStream(src,mode,acs),节省Close() & Dispose()
                {
                    //2.创建一个负责写入的流 fsWrite
                    using(FileStream fsWrite = new FileStream(target,FileMode.OpenOrCreate,FileAccess.Write))
                    //使用using语句减免代码,FileStream(src,mode,acs), 节省Close() & Dispose(),两个using嵌套,内部先Close() & Dispose()
                    {
                        byte[] buffer = new byte[1024*1024*5];
                        //因为文件可能会比较大,所以我们在读取的时候,应该通过一个循环去读取
                        while (true)//循环去读取写入
                        {
                            //返回本次实际读取到的字节数
                            int r = fsRead.Read(buffer, 0, buffer.Length);
                            //读取
                            //如果返回一个0,也就意味着什么都没有读取到,表示读取完了
                            if (r == 0) 
                            { 
                                break;
                            }
                            fsWrite.Write(buffer,0,r);
                            //写入
                        }
                        
                    }
                }
            }
        }
    }
  • 相关阅读:
    Django之url路由
    Django之setting文件
    Diango之通过form表单向服务端发送数据
    Django之win7下安装与命令行工具
    Linux学习之查看系统资源命令总结(二十二)
    实现简单的web框架
    Linux下发送邮件
    Linux学习之日志管理(二十一)
    Shell学习之结合正则表达式与通配符的使用(五)
    Linux学习之后台任务与定时任务(二十)
  • 原文地址:https://www.cnblogs.com/blacop/p/5962587.html
Copyright © 2011-2022 走看看