1. 程式人生 > >將多個檔案合併為一個檔案

將多個檔案合併為一個檔案

實現效果:

  

知識運用:

  FileStream  和BinaryReader  及BinaryWriter類

 實現程式碼:

        /// <summary>
        /// 檔案合併
        /// </summary>
        /// <param name="strFile">要合併的檔名稱列表</param>
        /// <param name="strPath">合併後儲存的檔案路徑</param>
        /// <param name="PBar">顯示進度的進度條</param>
        public void CombinFile(string[] strFile,string strPath,ProgressBar PBar)
        {
            PBar.Maximum = strFile.Length;
            FileStream addStream = new FileStream(strPath,FileMode.Append);
            BinaryWriter addWriter = new BinaryWriter(addStream);
            FileStream tempStream = null;
            BinaryReader tempReader = null;
            for (int i = 0; i < strFile.Length; i++)
            {
                tempStream = new FileStream(strFile[i],FileMode.Open);
                tempReader = new BinaryReader(tempStream);
                addWriter.Write(tempReader.ReadBytes((int)tempStream.Length));
                tempReader.Close();
                tempStream.Close();
                PBar.Value = i + 1;
            }
            addWriter.Close();
            addStream.Close();
            MessageBox.Show("檔案合併成功!");
        }