Code: Select all
Components.utils.import("resource://gre/modules/FileUtils.jsm");
Components.utils.import("resource://gre/modules/NetUtil.jsm");
Components.utils.import("resource://gre/modules/osfile.jsm")
function writeFile(nsiFile, data, overwrite, callback) {
//overwrite is true false, if false then it appends
//nsiFile must be nsiFile
if (overwrite) {
var openFlags = FileUtils.MODE_WRONLY | FileUtils.MODE_CREATE | FileUtils.MODE_TRUNCATE;
} else {
var openFlags = FileUtils.MODE_WRONLY | FileUtils.MODE_CREATE | FileUtils.MODE_APPEND;
}
//data is data you want to write to file
//if file doesnt exist it is created
var ostream = FileUtils.openFileOutputStream(nsiFile, openFlags)
var converter = Cc['@mozilla.org/intl/scriptableunicodeconverter'].createInstance(Ci.nsIScriptableUnicodeConverter);
converter.charset = 'UTF-8';
var istream = converter.convertToInputStream(data);
// The last argument (the callback) is optional.
NetUtil.asyncCopy(istream, ostream, function (status) {
if (!Components.isSuccessCode(status)) {
// Handle error!
Cu.reportError('error on write isSuccessCode = ' + status);
callback(status);
return;
}
// Data has been written to the file.
callback(status)
});
}
var acctMgr = Components.classes["@mozilla.org/messenger/account-manager;1"].getService(Components.interfaces.nsIMsgAccountManager);
var accounts = acctMgr.accounts;
for (var i = 0; i < accounts.length; i++) {
var account = accounts.queryElementAt(i, Components.interfaces.nsIMsgAccount);
//console.log(account.incomingServer.prettyName);
var localFile = Components.classes["@mozilla.org/file/local;1"]createInstance(Components.interfaces.nsILocalFile);
localFile.init("d:\\ttt.txt");
writeFile(localFile,"textit",true);
}