• ベストアンサー

zlibで圧縮されたファイルの解凍

zlibで圧縮されたファイルの解凍 圧縮されたファイルがあります。 zlibで圧縮されているそうです。 これを解凍したいのですが、どうすれば良いですか? 何かツールが必要なら何をダウンロードすればいいですか? 圧縮解凍ツールはlhaplusというのを使っていますが、そこからは不通には解凍できませんでした。 os:windows xp

質問者が選んだベストアンサー

  • ベストアンサー
  • neko1963
  • ベストアンサー率49% (127/258)
回答No.1

zlib は ZIP 形式での圧縮と解凍を行うためのライブラリ(他のプログラムから呼び出されて動作)です。 zlibを使って圧縮されたZIPファイルであれば、windows xpではマウスで右クリックして「すべて展開(A)」を選択して下さい。展開ウィザードが出ませんでしょうか?

参考URL:
http://brandish.xrea.jp/BlackCity/labo/labo_zlib.html
ngwave
質問者

補足

ありがとうございます。 ZIPファイルでは無さそうです。 モノはpostgreSqlの圧縮ダンプです。 postgreSqlのダンプでプレイン(テキスト)と圧縮が選べます。 圧縮の場合、zlibで圧縮されるようです。 両者でダンプしたものを比較すると容量は1/3ぐらいになり、たしかに圧縮された感じはありますが、解凍の方法が分かりません。 このようなzlibで圧縮されたファイルは解凍不可能なのでしょうか? 「プレインダンプを圧縮した物≒圧縮モードのダンプで、 圧縮モードのダンプを解凍したら、プレインダンプのようなものが抽出できる。」 という訳では無いという事でしょうか?

その他の回答 (6)

  • Tacosan
  • ベストアンサー率23% (3656/15482)
回答No.7

ぶっちゃけた話, 「gunzip で展開できる」ことがわかっているなら「gunzip を使えばいい」のでは? もちろん, 「そのあとどうするのか」は知ったことではないですが.

ngwave
質問者

補足

ありがとうございます。 「gunzip で展開できる」のはlinux上の話で、それをwindows上でやりたいので困っています。 コマンドラインからlinux上のgunzipと同等の事ができるwindows版のソフトがあれば紹介してください。

  • neko1963
  • ベストアンサー率49% (127/258)
回答No.6

お疲れ様でした。 Linux上で gunzip を使うしかないようですね。 >gunzip -c filename.gz >→→→ 成功

ngwave
質問者

補足

ありがとうございます。 しかし、 >Linux上で gunzip を使うしかないようですね。 それは希望している事とは異なります。 windows版で出来なければ意味がありません。 windows版でやる方法はpostgresの問題ですので、postgresのコーナーに別途立てました。 http://okwave.jp/qa/q5928029.html このスレでは、もう少しの間「zlibで圧縮した物をどうやって解凍するのか?」という当初の疑問に対して答えが付く事を期待して待ちたいと思います。

  • neko1963
  • ベストアンサー率49% (127/258)
回答No.5

ANo.3 yama1718さんが紹介しているALZipで解凍はできそうですね。 Windows XP上であれば tar32.dllもGZに対応しているようですので、LHMelt.EXE + tar32.dllの組合せ等の方法でも解凍はできると思います。 ※解凍はできたして、そのあとの事があると推察しますが。 拡張子別 対応DLL(圧縮解凍エンジン)一覧表 http://www.csdinc.co.jp/archiver/index.html 対応アプリケーション(32ビット用) -- 圧縮・解凍 http://www.madobe.net/archiver/index.html 老婆心ながら「zlibで圧縮されたファイル」を採取したのはLinuxの環境でしょうか? だとすると、その環境上で   gunzip -c filename.gz により解凍する方法もあると思います。 Windows XP上で当該ファイルが必要であれば解凍後にWindows XPマシンにファイルをコピーする ことになりますが、これは当該ファイルの用途によりますね。

参考URL:
http://www.csdinc.co.jp/archiver/index.html
ngwave
質問者

補足

ありがとうございます。 元はWindowsのみでやっていましたが、 linux,linuxと何故かlinuxの方に話が行くので、linuxでやってみました。 □ダンプを取り直しました 圧縮指定で /usr/local/pgsql/bin/pg_dump --file=filename.c --format=c --host=localhost --username=postgres template1 tar指定で /usr/local/pgsql/bin/pg_dump --file=filename.t --format=t --host=localhost --username=postgres template1 プレインで /usr/local/pgsql/bin/pg_dump --file=filename.p --format=p --host=localhost --username=postgres template1 無視定でgzをカマして /usr/local/pgsql/bin/pg_dump --host=localhost --username=postgres template1 | gzip > filename.gz □出来たファイル ls filenam* -la -rw-r--r-- 1 root root 7353 5月 28 14:14 filename.c -rw-r--r-- 1 root root 2912 5月 28 14:14 filename.gz -rw-r--r-- 1 root root 11450 5月 28 14:14 filename.p -rw-r--r-- 1 root root 23040 5月 28 14:20 filename.t tar指定の容量がデカイ!何の為のオプションなのか? □解凍チャレンジ gunzip -c filename.c →→→ 失敗 gunzip: filename.c: not in gzip format gunzip -c filename.t →→→ 失敗 gunzip: filename.t: not in gzip format gunzip -c filename.gz →→→ 成功 □結果 「圧縮指定でのダンプ」と、「ダンプしたものを圧縮したの」は別物でした。 zlibで圧縮したと言っても、zip, gzip その他のフォーマットと互換性があるとは限らないようですね。 □疑問 最初の話に戻って。。。 解凍できなければ「圧縮」でなく「破壊」ですので、意味はありません。 圧縮したものは必ず解凍できます。 zlibで圧縮した物はzlib自体では解凍できる筈なんですが、それは普通の人には不可能な領域なのでしょうか?

noname#158832
noname#158832
回答No.4

Microsoft圧縮フォルダをダウンロードしインストールして見ましょう!

ngwave
質問者

補足

Microsoft圧縮フォルダはlha圧縮をサポーとするためのツールではなかったですか?

  • yama1718
  • ベストアンサー率41% (670/1618)
回答No.3

zlibならgzip(Deflateアルゴリズム)でしょう。 確か普通のzipとは互換は無かった筈です。 gzip(拡張子.gz)が解凍できるソフトなら何でも良いのですが、 下記のALZipなら解凍できるでしょう。 http://www.altools.jp/

ngwave
質問者

補足

ありがとうございます。 試したところ、アーカイブではないと怒られました。

  • neko1963
  • ベストアンサー率49% (127/258)
回答No.2

postgreSqlの圧縮ダンプでしたか・・・。 それであればPostgreSQLの資料に記載されているのではないでしょうか。 少々古い記事ですが 参考:PostgreSQLの基本 http://memo.xight.org/2006-06-30-4 によると - 圧縮ダンプからのリストア $ createdb dbname $ gunzip -c filename.gz | psql dbname が該当すると思います。 その他:PostgreSQL日本語ドキュメント http://www.postgresql.jp/document/

参考URL:
http://www.postgresql.jp/document/
ngwave
質問者

補足

ありがとうございます。 マニュアルは目を通しています。 でも、圧縮モードで出力したダンプを解凍し、参照あるいはテキスト化する方法が分かりません。 紹介頂いたコマンドは解凍しつつデータベースにリストアするものであろうと推測します。 でも、やりたいのはリストアではなく、解凍のみして、中身を確認する事です。 また、gunzipというコマンドはPostgreSqlのbinには存在せず、動きません。 linuxのコマンドのようです。

関連するQ&A