码迷,mamicode.com
首页 > Windows程序 > 详细

c#的FileStream文件流

时间:2015-05-26 21:29:36      阅读:173      评论:0      收藏:0      [点我收藏+]

标签:c#   filestream   文件流   write   

文件流

FileStream、StreamReader和StreamWriter可以操作大文件;
FileStream 操作字节;可以操作任何类型的文件;
StreamReader和StreamWriter操作字符;

FileStream

方法名 作用 参数
FileStream() 创建FileStream对象 第一个是路径,第二个是文件模式FIleMode枚举,第三个数据模式FileAcess
Read() 分部分读取文件,返回实际读到的有效字节数,如果读得数量不是第三个参数指定的,就用空填充 第一个是存放的字节数组,表示从哪个地方往数组里放数组?,每次最多读多少
Write() 把字节数组写入 第一个参数是字节数组,第二个参数表示从哪个地方开始写入,第三个参数表述最多写多少
close(),dispose() 关闭流,释放流所占用的资源

FileMode OpenOrCreate , Append
FileAcess. Read 、Write、ReadWirte

将创建文件流对象的过程写在using当中,会自动帮助我们释放资源;

StreamReader和StreamWriter

可以用来读取格式化文本文件;
有ReadLine和Write WriteLine方法

using System;
using System.Collections.Generic;
using System.Diagnostics;
using System.IO;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace 用FileStream读写文件
{
    class Program
    {
        static void Main(string[] args)
        {
            String str = @"E:\下载\软件";
            Stopwatch sw = new Stopwatch();
            sw.Start();
            using (FileStream fsWriter = new FileStream(str + @"\opencv-3.0.exe", FileMode.Create, FileAccess.Write))
            {

                using (FileStream fsReader = new FileStream(str + @"\opencv-2.4.9.exe", FileMode.Open, FileAccess.Read))
                {
                    byte[] bytes=new byte[1024*4];//4kB是合适的;
                    int readNum;
                    while((readNum=fsReader.Read(bytes,0,bytes.Length))!=0)//小于说明读完了
                    {
                        fsWriter.Write(bytes,0,readNum);
                    }


                }//suing reader
            }//using writer
            sw.Stop();
            Console.WriteLine("总的运行时间为{0}",sw.ElapsedMilliseconds);
            Console.ReadKey();

        }//main
    }//class
}

c#的FileStream文件流

标签:c#   filestream   文件流   write   

原文地址:http://blog.csdn.net/zhzz2012/article/details/46012013

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!