私のサーバーは大きなファイルのアップロード/ダウンロードを許可していません。一方、大きなファイルをアップロード/ダウンロードする必要があるブートストラッパーを作成しました。大きなファイルを小さなサブファイルに分割し、後でマージするにはどうすればよいですか?すでに作成されているc#ライブラリは素晴らしいでしょう...しかし、これを自分でプログラムする方法についての提案を聞いてうれしいです...またはユーティリティを使用することさえできます。
**Windowsプラットフォーム**
Unixでは、splitコマンドを使用してファイルを分解し、catを使用してそれらを連結することができます。
split -b 1024M bigfile.tar.gz bigfile
これにより、bigfileaa bigfileabなどのファイルが大量に作成されます。次に、すべての小さな獣を宛先にftpで転送し、猫を実行します。
cat bigfile* > bigfile.tar.gz
Windowsでは、Zipアプリケーションにアーカイブを分割して、もう一方の端で再マージするオプションがある場合があります。実際、検索用語をグーグルで検索すると、そのzip split
ようなオプションがいくつか表示されます。
私が今まで使用したすべてのzipプログラムには、この機能があります。
7zipはWindowsでの私の現在のお気に入りです。コマンドラインバージョンも優れています。
split
それぞれ数行でjoin
プログラムを作成できます。ファイルから一定量(512KB、4MBなど)を読み取り、新しいファイルに書き出すだけです。ファイルの最後に到達するまで、これを繰り返します(そして書き込むファイル名を変更します)。
別のプログラムは、これらのファイルから読み取り、その内容を(次々に)ターゲットファイルに書き込む必要があります。
非常に簡単で、本当に、プログラミングの経験を積みたいのであれば、それは良い練習になるでしょう。
または、ニーズに合わせて小さなアプリケーションを作成することもできます...バイトを読み取ってから書き込むだけです...したがって、大きなファイルを小さなファイルに簡単に分割できます。