0

こんにちは、 http://www.codeproject.com/Articles/7530/Zip-Utils-clean-elegant-simple-C-Win32の「Zip Utils」を使用してい ます。

ファイルとフォルダを圧縮します。簡単なことは、ファイル名がわかっている場合、次のようなことをするだけです

HZIP hz; DWORD writ;
hz = CreateZip(_T("filename\\image1.zip"),0);

問題は、ループ内でファイル名をインクリメントしてファイルを圧縮しようとするとエラーが発生することです

    int i= 0;
for(i=0; i<record; i++)
{
     ZipAdd(hz,_T("doc"+i+1+".kml"), _T("filename\\doc"+i+1+".kml"));
    }
4

1 に答える 1

1

これはコードを記述する最も効率的な方法ではありませんが、概念を示しています。to_string( ... ) を使用して、数値を連結用の文字列に変換します。int ではなく、long long 引数が必要です。

long long i;
string filepath1, filepath2;
for(i=0; i<record; i++)
{
   filepath1 = "doc" + to_string(i + 1) + ".klm";
   filepath2 = "GenFiles\\doc" + to_string(i + 1) + ".klm";
   ZipAdd(hz,filepath1,filepath2);
} 
于 2012-10-07T03:35:19.377 に答える