プラグインフォルダにデータを保存するFirefoxプラグインを開発しました。バックアップボタンを追加するにはどうすればよいですか。ユーザーがボタンをクリックすると、保存ダイアログが表示され、フォルダーがzipファイルにパックされ、ユーザーの希望する場所に保存されます。
2 に答える
2
利用可能なzipリーダーとzipライターのインターフェイスがあります。
SDKモジュールでの使用例を次に示します:https ://github.com/voldsoftware/ziputils-jplib/blob/master/lib/ziputils.js
于 2012-08-05T11:16:24.953 に答える
1
そのままでは、アドオン SDK には ZIP ファイルを書き込むためのモジュールがありません。ただし、chrome オーソリティを使用すると、基盤となるプラットフォームのnsIZipWriter
インターフェイスにアクセスできます。例えば:
var {Cc, Ci, Cu} = require("chrome");
var {FileUtils} = Cu.import("resource://gre/modules/FileUtils.jsm");
var zipFile = FileUtils.getFile("ProfD", ["test.zip"], false);
var savedFile = new FileUtils.File("C:\\foo.exe");
var zipWriter = Cc["@mozilla.org/zipwriter;1"].createInstance(Ci.nsIZipWriter);
zipWriter.open(zipFile, FileUtils.MODE_WRONLY | FileUtils.MODE_CREATE);
zipWriter.addEntryFile("foo.exe", zipWriter.COMPRESSION_BEST, savedFile, false);
zipWriter.close();
これによりtest.zip
、ユーザーのプロファイル ディレクトリにファイルが作成され、そこに書き込まc:\foo.exe
れます。FileUtils
ドキュメントも参照してください。
于 2012-08-06T08:05:24.093 に答える