我想在本地创建一个html文件(没有Web服务器),并将其写入具有该html文件的本地文件。 但是使用的浏览器是嵌入在C#Form中的geckoFX。 如何使用geckoFX写入本地文件? 如果使用geckoFX是不可能的,是否可以使用EO.WebBrowser? 运行环境:.Net FrameWork 3.5,GeckoFX v 45.0.7.0 在本地定位的html文件(没有Web服务器)中,我们使用了以下代码,但是“错误:TypeError: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 ();
答案 0 :(得分:0)
您可以使用以下任何一种方法在任何地方写入文件:
File.WriteAllText("file.path", "contents_to_write");
或字节:
File.WriteAllBytes("file.path", byte[]);
其中byte[]
可以替换为要写入的字节数组。
希望这会有所帮助!