1

私は、wxwidgets(C ++)を使用して、アプリケーションの一時ディレクトリのすべての内容をコピーし、ディレクトリのすべての内容を圧縮する小さなアプリケーションを作成しようとしています。ただし、一時領域の内容を完全にコピーすることはできません。これが私のコードです

 wxString result;
 result = wxFileName::GetTempDir(); //Gets the temp area.

 wxFileName dir(result, wxEmptyString);
 dir.AppendDir(_T("Application"));
 bool a = dir.DirExists();
 wxFFileOutputStream out(_T("test.zip"));
 wxZipOutputStream zip(out);
 wxString sep(wxFileName::GetPathSeparator());

 zip.PutNextEntry(_T("entry1.txt"));
 wxString temp = dir.GetLongPath();
 zip.PutNextDirEntry(temp);

test.zipを作成し、entry1.txtとtempディレクトリ(内容なし)を書き込むことができます。ただし、サブディレクトリとディレクトリ内のファイルをコピーする方法がわからないようです。

これを行う他の方法はありますか?

4

1 に答える 1

2

wxDirを使用して、指定されたディレクトリのファイルとサブディレクトリを列挙します。wxDirTraverserを使用するかwxDir::GetAllFiles()、同じことを再帰的に実行します。

于 2013-01-28T15:44:43.830 に答える