質問: 特定のファイルに対して、ファイルサイズ指定(XXバイトまで)を行い そのサイズを超えた場合は別ファイルとし分割し、分割したファイルに関しては全て.zipファイルとしたいです。 ICSharpCode.SharpZipLib.dllを使用して圧縮は可能なのですが、分割の方法がわかりません。 やはり同時に行うことは不可なのでしょうか?(分割⇒圧縮の2段階が必要?) 分割に関してもMaceCab以外の方法で行いたいです。 最適な手段をご教示ください。
回答: `DotNetZip`がおすすめです。 NuGetで`DotNetZip`と検索すると出てきます。 念のため`DotNetZip`のGitHubも載せておきます。 サンプルコード ======== ``` class Program { static void Main(string] args) { using (var zip = new ZipFile()) { // test.mp4を追加 zip.AddFile("test.mp4"); // 1ファイルあたり1024KBに制限 zip.MaxOutputSegmentSize = 1024 * 1024; zip.Save("out/out.zip"); } } } ``` 出力結果 ===== ![