Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- if (!System) var System = { };
- if (!System.OneMangaManager) System.OneMangaManager = { };
- if (!System.OneMangaManager.File) System.OneMangaManager.File = { };
- System.OneMangaManager.File =
- {
- Choose:
- function(Title, Mode)
- {
- try
- {
- const IFP = Components.interfaces.nsIFilePicker;
- const fp = Components.classes["@mozilla.org/filepicker;1"].createInstance(IFP);
- fp.init(window, Title, IFP["mode" + Mode]);
- fp.appendFilter("OneManga Manager (*.omm)", "*.omm");
- fp.filterIndex = 0;
- fp.defaultExtension = "omm";
- const ret = fp.show();
- if (ret == IFP.returnOK || ret == IFP.returnReplace) return fp.file;
- else return;
- }
- catch(ex) { }
- return;
- },
- Write:
- function (File, Text)
- {
- if (!File) return;
- const unicodeConverter = Components.classes["@mozilla.org/intl/scriptableunicodeconverter"]
- .createInstance(Components.interfaces.nsIScriptableUnicodeConverter);
- unicodeConverter.charset = "UTF-8";
- Text = unicodeConverter.ConvertFromUnicode(Text);
- const os = Components.classes["@mozilla.org/network/file-output-stream;1"]
- .createInstance(Components.interfaces.nsIFileOutputStream);
- os.init(File, 0x02 | 0x08 | 0x20, 0700, 0);
- os.write(Text, Text.length);
- os.close();
- },
- Read:
- function (File)
- {
- if (!File) return;
- var res;
- const is = Components.classes["@mozilla.org/network/file-input-stream;1"]
- .createInstance(Components.interfaces.nsIFileInputStream);
- const sis = Components.classes["@mozilla.org/scriptableinputstream;1"]
- .createInstance(Components.interfaces.nsIScriptableInputStream);
- is.init(File, 0x01, 0400, null);
- sis.init(is);
- res = sis.read(sis.available());
- is.close();
- return res;
- },
- ReadUrl:
- function (aURL)
- {
- var ioService=Components.classes["@mozilla.org/network/io-service;1"]
- .getService(Components.interfaces.nsIIOService);
- var scriptableStream=Components
- .classes["@mozilla.org/scriptableinputstream;1"]
- .getService(Components.interfaces.nsIScriptableInputStream);
- var channel=ioService.newChannel(aURL,null,null);
- var input=channel.open();
- scriptableStream.init(input);
- var str=scriptableStream.read(input.available());
- scriptableStream.close();
- input.close();
- return str;
- }
- };
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement