維持しなければならない dir 構造を含むいくつかの大きな zip ファイルがあります。現在、それらを解凍するために使用しています
zip = zipfile.ZipFile(self.fileName)
zip.extractall(self.destination)
zip.close()
問題は、これらのプロセスに 3 ~ 5 分以上かかる可能性があり、まだ機能しているというフィードバックがないことです。私がやりたいのは、現在解凍中のファイルの名前をGUIのステータスバーに出力することです。私が念頭に置いているのは、次のようなものです
zip = zipfile.ZipFile(self.fileName)
zipNameList = zipfile.namelist(self.fileName)
for item in zipNameList:
self.SetStatusText("Unzipping" + str(item))
zip.extract(item)
zip.close()
これの問題は、正しいディレクトリ構造を作成しないことです。これが最善の方法であるかどうかはわかりません。
wx.progressdialog の使用も検討していましたが、zip.extractall(filename) の進行状況を表示する方法を思いつきませんでした。