我要开始位于本地的HTML文件(没有web服务器),并将其写入与HTML文件的本地文件。但是,浏览器使用的geckoFX嵌入C#形式。我为什么能写入与geckoFX本地文件?如果它是不可能的geckoFX,这可能与EO.WebBrowser?运行环境:.NET Framework 3.5的,GeckoFX v 45.0.7.0在位于本地的HTML文件(没有网络服务器)我们用下面的代码,但“错误:类型错误:netscape.security.PrivilegeManager是未定义”
filename = (ua.indexOf ('windows')! = -1? 'C: \\ temp \\': '/ temp /') + filename;
netscape.security.PrivilegeManager.enablePrivilege ('UniversalXPConnect');
var file = Components.classes ['@ mozilla.org/file/local;1'].createInstance(Components.interfaces.nsILocalFile);
file.initWithPath (filename);
var fileStream = Components.classes ['@ mozilla.org/network/file-output-stream;1'].createInstance (Components.interfaces.nsIFileOutputStream);
fileStream.init (
file,
0x02 | 0x08, 0664, 0);
var converterStream = Components
.classes ['@ mozilla.org/intl/converter-output-stream;1']
.createInstance (Components.interfaces.nsIConverterOutputStream);
converterStream.init (
fileStream,
'UTF-8',
content.length,
Components.interfaces.nsIConverterInputStream.DEFAULT_REPLACEMENT_CHARACTER
);
converterStream.writeString (content);
converterStream.close ();
fileStream.close ();
您可以从任何地方通过写入文件:
File.WriteAllText("file.path", "contents_to_write");
或字节:
File.WriteAllBytes("file.path", byte[]);
其中byte[]
可能是与字节数组写替换。
希望这有助于!