問題を解決するための解決策を見つけようとしています。 実際、C++でlibzipを使ってファイルを圧縮するための独自のツールを書いています。Libzip - エラー:アーカイブを開くときにエラーが発生しました:エラーなし
私はいくつかのテストをしたいと思っていましたが、ログから「面白い」エラーを取得しました。私はもちろん、私は、任意の.zipファイルが書かれていませんでした、=> Error : Error while opening the archive : No error
を取得し、
void save(std::vector<std::string> filepath, std::string savepath){
int err;
savepath += time(NULL);
zip* saveArchive = zip_open(savepath.c_str(), ZIP_CREATE , &err);
if(err != ZIP_ER_OK) throw xif::sys_error("Error while opening the archive", zip_strerror(saveArchive));
for(int i = 0; i < filepath.size(); i++){
if(filepath[i].find("/") == std::string::npos){}
if(filepath[i].find(".cfg") == std::string::npos){
err = (int) zip_file_add(saveArchive, filepath[i].c_str(), NULL, NULL);
if(err == -1) throw xif::sys_error("Error while adding the files", zip_strerror(saveArchive));
}
}
if(zip_close(saveArchive) == -1) throw xif::sys_error("Error while closing the archive", zip_strerror(saveArchive));
}
:
は、ここに私の機能です。
お手数をおかけしていただければ幸いです!
私はこの愚かな「エラーなし」はもう得られませんでしたが、.zipファイルも作成されません... '/'の検索はまだ実装されていません。 返信いただきありがとうございます。 – eldten
デバッガでステップ実行します。ベクターには何かがありますか?追加返品とは何ですか? –
私はzip_file_addの仕組みが分からないと思います。実際、関数は圧縮してファイルをアーカイブに追加しませんが、内部のパスのみを作成します。助けてくれてありがとう。 – eldten