C#中使用FilleStream實現視頻文件的複製功能

這篇文章主要介紹了C#中使用FilleStream實現視頻文件的複製功能,本文通過實例代碼給大家介紹的非常想詳細,具有一定的參考借鑑價值,需要的朋友可以參考下

實現

新建控制檯程序

在main方法中

//複製源路徑
string source = @"D:\音樂迷\音樂迷\mv\消愁-毛不易.mp4";
//複製目的路徑
string target = @"C:\Users\Administrator\Desktop\霸道的程序猿.mp4";
CopyFile(source,target);
Console.WriteLine("複製成功");
Console.ReadKey();

然後實現複製視頻文件的方法

public static void CopyFile(string source,string target)
    {
      //創建一個負責讀取的流
      using (FileStream fsRead = new FileStream(source, FileMode.OpenOrCreate, FileAccess.Read))

      {
        //創建一個負責寫入的流
        using (FileStream fdWrite = new FileStream(target,FileMode.OpenOrCreate,FileAccess.Write))
        {
          // 5 兆的字節數組
          byte[] buffer = new byte[1024*1024*5];
          //因爲文件可能會比較大,所以我們在讀取的時候 應該通過一個循環去讀取
          while (true)
          {
            //返回本次讀取實際讀取到的字節數
            int r = fsRead.Read(buffer, 0, buffer.Length);
            //如果返回一個0 也就意味着什麼都沒有讀取到 即讀取完了
            if (r == 0)
            {
              break;
            }
            fdWrite.Write(buffer,0,r);
          }

          
        }
      }
    }

運行效果

知識點擴展:C#使用FileStream複製多媒體文件,具體代碼如下所示:

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.IO;
namespace 多媒體文件複製
{
  class Program
  {
    static void Main(string[] args)
    {
      //先讀取出來,再寫入到指定路徑
      string source = @"C:\123\123.avi";
      string target = @"C:\123\456.avi";
      CopyFile(source, target);
    }
    public static void CopyFile(string source, string target)
    {
      //創建一個讀取的流
      using (FileStream fsRead = new FileStream(source, FileMode.OpenOrCreate, FileAccess.Read))
      {
        //創建一個寫入的流
        using (FileStream fsWrite = new FileStream(target, FileMode.OpenOrCreate, FileAccess.Write))
        {
          //每次讀取5M大小
          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);
          }
        }
      }
    }
  }
}

總結

以上所述是小編給大家介紹的C#中使用FilleStream實現視頻文件的複製功能,希望對大家有所幫助,如果大家有任何疑問請給我留言,小編會及時回覆大家的。在此也非常感謝大家對神馬文庫網站的支持!
如果你覺得本文對你有幫助,歡迎轉載,煩請註明出處,謝謝!

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章