Zip について 教えてください。 Zipのプログラムを利用しているアプリケーションが以下の2つのメッセージを出すことがあります。 Zipがどのような仕様になっているのか?、エラーメッセージの原因が特定できる情報をお願いします。  英文でもO.K.です。適当なURL、その他の情報をお待ちしています。


message-1, Zip error:Entry too big to split
message-2, Zip error:Could not create output file

回答の条件
  • 1人2回まで
  • 登録:2008/04/14 16:53:37
  • 終了:2008/04/15 02:56:15

ベストアンサー

id:ardarim No.2

ardarim回答回数892ベストアンサー獲得回数1422008/04/14 23:38:56

ポイント100pt

特に説明されたようなURLはないと思いますので、直接ソースコードを見たほうが早いです。

Info-ZIP project - download


message-1, Zip error:Entry too big to split

これはエラーコードZE_BIG(6)のエラー文字列です。

このエラーを返す箇所は3箇所です。

zip232\zipsplit.c(590): ziperr(ZE_BIG, z->zname);

これは、ZipSplitというプログラムが返すエラーです。ZipSplitは、ZIPファイルを指定されたサイズ以下の複数のZIPファイルに分割するプログラムです。

該当のエラー(ZE_BIG = 6)は、ZIPファイルに含まれるファイルの中に、単体で圧縮サイズが指定されたサイズを超えてしまうファイルが含まれているため、指定されたサイズ以下に分割できないことを示すエラーです。

zip232\zipup.c(551): ZIPERR(ZE_BIG, "seek wrap - zip file too big to write");

出力ファイルのサイズが、実行している処理系のfseek()で扱えるサイズを超えたためこれ以上処理できないことを示します。

zip232\zipup.c(831): ZIPERR(ZE_BIG, "file exceeds Zip's 4GB uncompressed size limit");

ZIPが扱えるファイルサイズの上限(32bit=4GB)を超えたためこれ以上処理できないことを示します。


message-2, Zip error:Could not create output file

これはエラーコードZE_CREAT(15)のエラー文字列です。

これはメッセージの英文が示すとおり、ZIPファイルを出力するためにファイルを作成しようとしたが、ファイルの作成に失敗したことを示すエラーです。

このエラーを返す箇所は10箇所ありますが、ファイルを上書きする際に元のファイルの削除(unlink)に失敗したか、またはファイル名の変更(rename)に失敗したか、あるいは新しいファイルの作成(fopen)に失敗したかのいずれかが原因です。削除/変更/作成に失敗した原因は調べようがないので推測するしかありません。

zip232\fileio.c(671): return ZE_CREAT; /* Can't erase zip file--give up */

zip232\fileio.c(690): ) return ZE_CREAT;

zip232\fileio.c(712): return ZE_CREAT;

zip232\zip.c(1900): ZIPERR(ZE_CREAT, zipfile);

zip232\zipcloak.c(301): if ((inzip = fopen(zipfile, "a")) == NULL) ziperr(ZE_CREAT, zipfile);

zip232\zipnote.c(420): ziperr(ZE_CREAT, zipfile);

zip232\zipsplit.c(753): ziperr(ZE_CREAT, path);

zip232\zipsplit.c(773): ziperr(ZE_CREAT, path);

zip232\macos\source\macopen.c(161):if (err != 0) return ZE_CREAT;

zip232\macos\source\macopen.c(164):else return ZE_CREAT;

id:honcar

丁寧なご回答、ありがとうございます。

2008/04/15 02:51:55

その他の回答(2件)

id:sterwars22 No.1

sterwars22回答回数363ベストアンサー獲得回数02008/04/15 01:02:07

id:honcar

ありがとうございます。 しかしながら、あまり参考にならず、リンク先のURLも ページがないため役に立ちませんでした。

2008/04/15 02:53:58
id:ardarim No.2

ardarim回答回数892ベストアンサー獲得回数1422008/04/14 23:38:56ここでベストアンサー

ポイント100pt

特に説明されたようなURLはないと思いますので、直接ソースコードを見たほうが早いです。

Info-ZIP project - download


message-1, Zip error:Entry too big to split

これはエラーコードZE_BIG(6)のエラー文字列です。

このエラーを返す箇所は3箇所です。

zip232\zipsplit.c(590): ziperr(ZE_BIG, z->zname);

これは、ZipSplitというプログラムが返すエラーです。ZipSplitは、ZIPファイルを指定されたサイズ以下の複数のZIPファイルに分割するプログラムです。

該当のエラー(ZE_BIG = 6)は、ZIPファイルに含まれるファイルの中に、単体で圧縮サイズが指定されたサイズを超えてしまうファイルが含まれているため、指定されたサイズ以下に分割できないことを示すエラーです。

zip232\zipup.c(551): ZIPERR(ZE_BIG, "seek wrap - zip file too big to write");

出力ファイルのサイズが、実行している処理系のfseek()で扱えるサイズを超えたためこれ以上処理できないことを示します。

zip232\zipup.c(831): ZIPERR(ZE_BIG, "file exceeds Zip's 4GB uncompressed size limit");

ZIPが扱えるファイルサイズの上限(32bit=4GB)を超えたためこれ以上処理できないことを示します。


message-2, Zip error:Could not create output file

これはエラーコードZE_CREAT(15)のエラー文字列です。

これはメッセージの英文が示すとおり、ZIPファイルを出力するためにファイルを作成しようとしたが、ファイルの作成に失敗したことを示すエラーです。

このエラーを返す箇所は10箇所ありますが、ファイルを上書きする際に元のファイルの削除(unlink)に失敗したか、またはファイル名の変更(rename)に失敗したか、あるいは新しいファイルの作成(fopen)に失敗したかのいずれかが原因です。削除/変更/作成に失敗した原因は調べようがないので推測するしかありません。

zip232\fileio.c(671): return ZE_CREAT; /* Can't erase zip file--give up */

zip232\fileio.c(690): ) return ZE_CREAT;

zip232\fileio.c(712): return ZE_CREAT;

zip232\zip.c(1900): ZIPERR(ZE_CREAT, zipfile);

zip232\zipcloak.c(301): if ((inzip = fopen(zipfile, "a")) == NULL) ziperr(ZE_CREAT, zipfile);

zip232\zipnote.c(420): ziperr(ZE_CREAT, zipfile);

zip232\zipsplit.c(753): ziperr(ZE_CREAT, path);

zip232\zipsplit.c(773): ziperr(ZE_CREAT, path);

zip232\macos\source\macopen.c(161):if (err != 0) return ZE_CREAT;

zip232\macos\source\macopen.c(164):else return ZE_CREAT;

id:honcar

丁寧なご回答、ありがとうございます。

2008/04/15 02:51:55
id:pahoo No.3

pahoo回答回数5960ベストアンサー獲得回数6332008/04/14 18:47:09

ポイント50pt

ご利用のZipアプリケーション(それともライブラリですか?)が特定できないとお答えするのが難しいのですが、

message-1, Zip error:Entry too big to split

message-2, Zip error:Could not create output file

英語の意味から考えて、圧縮されているファイルが大きすぎて解凍できないということではないでしょうか。

ZIPファイルは、その中に、各々のファイル(Entry)の解凍後のファイルサイズを持っています。その構造はftp://ring.ocn.ad.jp/pub/text/CTAN/tools/zip/info-zip/doc/appno...を参照ください。

id:honcar

リンクのファイルはじっくり読ませていただきます。 ありがとうございました。

2008/04/15 02:54:46

コメントはまだありません

この質問への反応(ブックマークコメント)

「あの人に答えてほしい」「この質問はあの人が答えられそう」というときに、回答リクエストを送ってみてましょう。

これ以上回答リクエストを送信することはできません。制限について

絞り込み :
はてなココの「ともだち」を表示します。
回答リクエストを送信したユーザーはいません