kkamegawa's weblog

Visual Studio,TFS,ALM,VSTS,DevOps関係のことについていろいろと書いていきます。Google Analyticsで解析を行っています

次の.NET BCLにやっとzipを扱うクラスが入るらしい

connectでフィードバックしていた件、駄目なんじゃないかと思いつつ、なんとか入ることが決まったようです。今日「次のバージョンで入れるよ」というPMのコメントと共にcloseされました。

IronPythonのソースにzipを圧縮展開するためのソースがついているのですが、これは罠です。日本語ファイル名を使うとExplorerから見るとばけばけになりますので、Encodingを明示的に指定する必要があります。この辺で書きました。
IronPythonのzipソースと日本語
あと、メモリ回りよくないようで、件のIronPythonのzip関係のソースを使ったツールで1GB級のファイルを圧縮させるとメモリ関係の例外が出ました。手を入れたいのですが、もうちょっとあとで。
コメントによると、BCL Team Blogでコメント受け付けているから言いたいことがあればぜひそちらでってことでした。
Working with Zip Files in .NET [Richard Lee] - BCL Team Blog - Site Home - MSDN Blogs
コメント見るとこのあたりの要望が多いようです。

  • LINQ使いたい
  • Streamベースになるのもいいけどいろいろ言いたいことはある(たくさんコメントついてます)
  • 暗号をサポートしてほしい(Windowsで搭載しているzip暗号はちょっと弱いので7-zip級のでしょうかね)
  • より圧縮率を高くしてほしい
  • ファイル名のエンコーディング気を付けて(一人だけ書いてました。みんなUTF-8でいいとか思ってる?日本以外のWindowsではzipフォルダに含まれるファイル名エンコーディングはどうなっているんだろう?)

ざっと見こんな感じですかね。.NET Framework 4 SP1ではなくて、その次(4.5とかになるんだろうか?)なんでしょうかね。