Half-Retirean's Lazy Life Diary / ダラダラ余生日記

最近思ったこと: やりたいことだけやるって幸せなことだ

ホーム 連絡をする 同期する ( RSS 2.0 ) Login
投稿数  984  : 記事  4  : コメント  42105  : トラックバック  277

ニュース

My Website

初心者向けのサイトです。

C# と VB.NET の入門サイト

最近のできごと

暇人28号FX

Sponsored Link1

Sponsored Link2

Archive

書庫

.NET Framework 2.0 から、System.IO.Compression.GZipStream クラスが加わり GZip 形式で圧縮 / 解凍が容易になりました。しかし、私がこのクラスを使うことはたぶんないでしょう。.NET CLR アプリケーションでは、(現実的な話) Windows 分野に限定されてしまうので、zip (もしくは日本なら lzh あたり) とかでないと使いようがないです。

まあ、そういうわけで今のところ J# (Java) にある ZipOutputStream のラッパークラスを使っていたりしますが、総合アーカイバのようにファイルの取り出しとかきめ細かいことが容易にできるところまで考えられていないです。どういったフレームワークが望ましいのやら...


ついでに、@IT にあるこちらの記事ですが、

最後にある「圧縮後のファイル サイズ」の項の "圧縮率 (%)" の数字が逆転していますよね。どこに連絡すれば良いのかわかりませんので、指摘はしていません。

投稿日時 : 2007年3月15日 11:57

コメント

# re: System.IO.Compression.GZipStream クラス 2007/03/15 13:24 nagise
GZIPでなぜ「Windows 分野に限定されてしまう」のでしょう?

# re: System.IO.Compression.GZipStream クラス 2007/03/15 13:41 じゃんぬねっと
わかりにくくて申し訳ありません。

"GZip が" という意味ではなく、".NET Framework が" という意味です。
Mono プロジェクトもありますが、現実的には...

# gz だけに関していえばむしろ逆ですからね。

# re: System.IO.Compression.GZipStream クラス 2007/03/15 14:06 なちゃ
Web系で使いまくり(ってほどでもないですが)です。
※ていうか元々その辺のために作られただけだとしか思えない。

でも読み出し圧縮や書き込み伸長が使えないのはちょっと不便ですけどね、


# re: System.IO.Compression.GZipStream クラス 2007/03/15 14:13 じゃんぬねっと
> ていうか元々その辺のために作られただけだとしか思えない。

そうでしょうね。

私の場合は Linux + Apache + α になってしまうので、使うことはなかったりします。
ちなみに、ASP.NET の案件が来てもグループ会社の都合で、zip あるいは lzh になるでしょう。

サーバー内だけの都合であれば構わないかもしれませんが、ダウンロードありきでしか扱わないのですよね。
そうなると、やはり zip か lzh に...

# re: System.IO.Compression.GZipStream クラス 2007/03/15 14:14 じゃんぬねっと
っていうか、ASP.NET の案件を誰かクレクレ。
C# や VB.NET すらやってませんぜ。

# re: System.IO.Compression.GZipStream クラス 2007/03/15 15:21 nagise
> "GZip が" という意味ではなく、".NET Framework が" という意味です。

System.IO.Compression.GZipStream クラスを使ってしまうとWindows以外の環境で利用することが絶望的になる、という意味合いでよいでしょうか?
CLRの実行環境ってJavaのVMと違って多環境化が進みませんね…。

そういえば以前Apache + Tomcat環境下でGZIP送出しようとして失敗したっけ。
Apacheがチャンク形式でパケット送信するせいでTomcat側でGZIPかけてもうまくいかなかった覚えが。
今思うとApache側の設定で抑えられるのかもしれませんが。

java.util.zip.ZipOutputStreamで日本語ファイル名をエントリに含めると文字化けする件はどうなったのでしょうかね…。

# re: System.IO.Compression.GZipStream クラス 2007/03/15 16:16 じゃんぬねっと
> System.IO.Compression.GZipStream クラスを使ってしまうと
> Windows以外の環境で利用することが絶望的になる、という意味合いでよいでしょうか?

考えている順序が違うだけかもしれません。

私は、GZipStream クラスが問題ということではなく、できあがるファイルの都合の話をしています。
まあ、結果として、GZipStream クラスの使用頻度がないという方向に結びついているのは確かです...

少なくとも、Windows 以外の環境で利用することは絶望的ではないですよ。
そのあたりは、むしろ逆で Windows 以外の環境の方が好都合なのではないでしょうか。

> java.util.zip.ZipOutputStreamで日本語ファイル名を
> エントリに含めると文字化けする件はどうなったのでしょうかね…。

J#2.0 では解決済みだったかと思います。
setTime の不具合も解決しているのではないでしょうか。

# re: System.IO.Compression.GZipStream クラス 2007/03/15 16:31 nagise
> むしろ逆で Windows 以外の環境の方が好都合
これはどういう意図で言っておられます?

「WindowsのCLRよりもMonoなどのCLIの実装の方が好都合」の意味?
→ 動作上のメリットがある?

どうもJava主体の人間なので前提を色々間違えているのかもしれません… orz

# re: System.IO.Compression.GZipStream クラス 2007/03/15 18:41 うじはら
HTTPは、クライアントが受け付けるならGZIPで圧縮してレスポンスを返すことも許されるので、このクラスがあるのでしょう。
.NETでZIP、GZIPファイルを取り扱う場合に#ziplibを利用しているものが多いです。
http://www.icsharpcode.net/OpenSource/SharpZipLib/

# re: System.IO.Compression.GZipStream クラス 2007/03/15 18:51 じゃんぬねっと
>nagise さん
残念なことに、もっと低次元なお話で「お客さんの都合」と書いた方がわかりますか?

>うじはらさん
#ziplib は 1.1 の時に使っていました。

# re: System.IO.Compression.GZipStream クラス 2007/03/15 19:57 nagise
> 残念なことに、もっと低次元なお話で「お客さんの都合」と書いた方がわかりますか?

あ~。技術的な話ではなく政治的な話なのですね…。
察しが悪くて申し訳ないです。

# re: System.IO.Compression.GZipStream クラス 2007/03/16 9:05 シャノン
System.IO.Packagingはどうなんだろうか(未調査

# だが、ZIPで! 2007/03/18 14:17 ぽぴ王子の人生プログラミング中
だが、ZIPで!

# System.IO.Compression.GZipStream / DeflateStream クラス 2007/03/19 0:42 using Misuzilla.Wankuma;
System.IO.Compression.GZipStream / DeflateStream クラス

# System.IO.Compression.GZipStream / DeflateStream クラス 2007/03/19 0:44 using Misuzilla.Wankuma;
System.IO.Compression.GZipStream / DeflateStream クラス

# だが、ZIPで! 2007/05/31 23:45 ぽぴ王子の人生プログラミング中
だが、ZIPで!

# ZniGpYzUlW 2014/08/04 4:09 http://crorkz.com/
a2vlYX Major thanks for the post. Fantastic.

# TcKntUYWXRmb 2014/08/05 5:35 http://crorkz.com/
6W1o48 I truly appreciate this blog post.Really looking forward to read more. Awesome.

Post Feedback

タイトル
名前
Url:
コメント: