Javascript 如何在Firefox插件中附加到文件?
在“w”中“打开”文件,这将截断我现有的文件!如何在“附加”模式下打开,然后在“查找”模式下打开 SDK的Javascript 如何在Firefox插件中附加到文件?,javascript,file-io,firefox-addon,firefox-addon-sdk,Javascript,File Io,Firefox Addon,Firefox Addon Sdk,在“w”中“打开”文件,这将截断我现有的文件!如何在“附加”模式下打开,然后在“查找”模式下打开 SDK的文件模块非常有限。打开文件进行写入时,文件将始终被截断()。另外,它在主线程上使用完全同步的I/O,这并不是一件好事,因为它会在I/O期间阻塞整个UI 您可能应该通过模块使用另一种机制。请参阅和/或。是否有的“w+”模式?文档中没有,我尝试时也没有。。它接受“w+”,但在结束后,当写下一行时,它会从文件的开头开始写,我在哪里可以找到“chrome”上的文档?每次我在google上搜索时,我都
文件
模块非常有限。打开文件进行写入时,文件将始终被截断()。另外,它在主线程上使用完全同步的I/O,这并不是一件好事,因为它会在I/O期间阻塞整个UI
您可能应该通过模块使用另一种机制。请参阅和/或。是否有
的“w+”
模式?文档中没有,我尝试时也没有。。它接受“w+”,但在结束后,当写下一行时,它会从文件的开头开始写,我在哪里可以找到“chrome”上的文档?每次我在google上搜索时,我都会得到“google chrome”,而不是Firefox chrome。
var tabs = require("sdk/tabs");
var iofile = require("sdk/io/file");
var widgets = require("sdk/widget");
var selection = require("sdk/selection");
function console_log(text) {
console.log(selection.text);
}
function print(text) {
console.log(text);
}
function dir_object(object_to_parse) {
var name = '';
for (name in object_to_parse) {
print(name);
}
}
function write_text(filename, text) {
var fh = iofile.open(filename, 'w');
var content = fh.read();
dir_object(fh);
selected_text = text + "\n";
fh.write(selected_text);
fh.flush();
fh.close()
}
function select_text_handler() {
write_text('/tmp/foo', selection.text);
}
var widget = widgets.Widget({
id: "scribus-link",
label: "Scribus website",
contentURL: "http://www.mozilla.org/favicon.ico",
onClick: function() {
}
});
selection.on('select', function () { select_text_handler(); });