C# (dotnetcore) ディレクトリを指定してZIPファイルを作成
System.IO.Compression を使います。
早速やっていきましょう。
テスト用のフォルダ・ファイルを作る
mkdirコマンドでディレクトリを作成
mkdir /tmp/test/日本語フォルダ mkdir /tmp/test/日本語フォルダ/test mkdir /tmp/test/日本語フォルダ/フォルダ
echo コマンドで出力した内容をリダイレクトでファイルに書き出す
echo "test" > /tmp/test/日本語フォルダ/test/test.txt echo "テスト" > /tmp/test/日本語フォルダ/フォルダ/test.txt
ディレクトリを指定してZIPファイルを作成
using System; namespace ZipArchiveExample { class Program { static void Main(string[] args) { string sourceDirectoryName = @"/tmp/test/日本語フォルダ"; string destinationArchiveFileName = @"/tmp/test/日本語フォルダ.zip"; System.IO.Compression.ZipFile.CreateFromDirectory(sourceDirectoryName, destinationArchiveFileName); } } }
実行結果
解凍すると、「日本語フォルダ 2」ができました。