最近因事物需要,需要將大文件分解為幾個小文件,然後就行傳輸,在接收端需要對接收到的小文件進行融合。因此用Qt寫了這個小工具。現在奉獻上這個小工具的代碼和思路。
我們知道任何文件在計算機上都是二進制數據塊,因此只需要使用讀寫二進制的形式來讀取大文件,在將讀取的大文件以二進制形式寫入小文件,這樣就可以將文件拆分了(當然這是非常簡單的拆分方法,對有些文件肯定存在錯誤的,因為本人在這方面的知識很膚淺)。同樣小文件的融合就是拆分的逆過程。
在讀寫文件的過程中我使用的是C++標准庫ifstream和ofstream兩個文件操作的類。以ios::binary方式打開文件。這裡就不貼代碼了,我下面會直接給出代碼的下載地址。
下面是演示(我嘗試分解和融合視頻、pdf、壓縮等文件均成功,但是在Ubuntu上有些文本文件卻不能讀)。
測試文件的信息:
視頻文件的分解和融合(融合後能正常播放):
pdf文件的測試
壓縮文件的測試:
效果還是可以的,能滿足自己要求的那些文件的分解和融合。
代碼下載地址:
------------------------------------------分割線------------------------------------------
免費下載地址在 http://linux.linuxidc.com/
用戶名與密碼都是www.linuxidc.com
具體下載目錄在 /2016年資料/1月/8日/Qt實現文件拆分和融合小工具/
下載方法見 http://www.linuxidc.com/Linux/2013-07/87684.htm
------------------------------------------分割線------------------------------------------