如何將乙個檔案分割成多個小檔案

2021-04-26 02:41:26 字數 1484 閱讀 1124

如何將乙個檔案分割成多個小檔案

你也許會遇到到這樣乙個問題?當你有乙個較大的軟體,而無法用一張軟盤將其全部拷下時,你也許會想到該將它分解開,分盤拷回去後,再將它們合併起來。現在的這種分割工具很多,你想自己動手做乙個適合自己的分割工具麼?下面就讓我用以前用vc做的乙個<袖珍檔案分割器>的例程來告訴你吧!程式執行後介面如下圖:

基本構成思想:檔案分割的基本思想比我之前發表的另一篇文章<如何將多個檔案合併為乙個可執行程式>的構成思想簡單多了,它主要也分為分割檔案和合併分割後的檔案二大部分。分割檔案,將原檔案按指定分割大小進行等分,然後順序讀取其指定分割大小資料後到寫到各自的新建檔案中。合併檔案,將各分割後的檔案順序讀取後,寫入到乙個檔案中既可。

1、分割檔案時:開啟檔案,讀取指定的分割大小一段資料,寫入到一新建檔案中,接著再讀同樣大小的一段資料,再寫入到一新建檔案中……,直到讀出檔案最後一部分資料,寫入到最後乙個新建檔案中。對每乙個分割後的新建檔名,採用原檔名前加數字資訊的方法,按分割的順序,按個加上一數字標識資訊,以便合併時使用。

分割檔案的部分**實現如下:

//檔案分割涵數

int cfilespltdlg::splitme()

do //當檔案小於指定要分割的大小時

while (dwread > 0 && destfile.getlength() < newlen);

destfile.close();

l++;

updatewindow();

}while (dwread > 0);

m_sourcefile.close();

return 0; }

2、合併檔案時:和上面分割所採用的方法相反,將各個分割後的小檔案讀出後,按其分割後檔名前數字大小的順序,按個寫入到新建的檔案中,這一新建檔案的名字,為去掉分割後檔案前面數字部分後的檔名(既原檔名)。

合併檔案的部分**實現如下:

// 檔案合併涵數

int cfilespltdlg::mergeme()

else

//形成乙個新的檔名

name = _t(newpath + pref + m_filename);

do while (dwread > 0);

m_sourcefile.close();

l++;

updatewindow();

}while (l < 500);//little bit dirty solution, but you can always improve it!...

return 0;

}  

乙個檔案分割成多個檔案

linux 或 類unix 下乙個檔案分割成多個 split l 20000 filename.txt a 3 d filename ls grep filename xargs n1 i mv txt 選項 options b 選項後跟期望切割後的單個檔案的大小,單位k或者m eg.split b...

如何將多個excel檔案合成乙個檔案

1.需要把多個excel表都放在同乙個資料夾裡面,並在這個資料夾裡面新建乙個excel。2.用microsoft excel開啟新建的excel表,並右鍵單擊sheet1,找到 檢視 單擊進去。進去之後就看到了巨集計算介面。3.然後把下面這些巨集計算的 複製進去,然後找到 工具欄上面的 執行 下的 ...

linux下如何將大檔案分為多個小檔案

1 將檔案按照儲存大小拆分 如下命令,將954m大小的檔案httpd.log,按照500mb每個檔案大小進行拆分。拆分後,變為xaa和xab兩個檔案,每個檔案大小為477m。rw r r 1 root root 477m mar 25 12 38 xab 2 將拆分後的檔案按照某個tag命名 如下命...