プログラミングとかブログ

Unity/C#/SRPGStudio/RPGツクールMVの情報とかその他気になったことを調べて書きます。

【C#】DotNetZipライブラリのReadメソッドの文字コード指定方法

zipファイル読み込み時にDotNetZip(Ionic Zip Library)を使ってZIP書庫のリスト表示などを行う - DoboWikiを参考にしたんですが、Readメソッドの文字コード指定でエラーが出ました。

using (Ionic.Zip.ZipFile zip = Ionic.Zip.ZipFile.Read(
    zipPath, System.Text.Encoding.GetEncoding("shift_jis")))

という風に第2引数にEncodingクラスを渡しているのですが、コードのコメントによるとReadOptionsクラスが正しいようです。
ライブラリが更新されたんでしょうかね?

現在は以下のようにするとできます。

//ReadOptionsクラスのEncodingプロパティにEncodingクラスを突っ込む
var enc = new ReadOptions() { Encoding = Encoding.GetEncoding("shift_jis") };
using (ZipFile zip = ZipFile.Read(zipPath, enc))