程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> .NET網頁編程 >> C# >> C#入門知識 >> c#的FileStream文件流

c#的FileStream文件流

編輯:C#入門知識

c#的FileStream文件流


文件流

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
}

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved