我想启动一个位于本地的html文件(没有web服务器),并使用该html文件将其写入本地文件。但是要使用的浏览器是嵌入在C#表单中的geckoFX。如何使用geckoFX写入本地文件?如果使用geckoFX是不可能的,那么使用EO.WebBrowser可以吗?操作环境:.Net FrameWork 3.5,GeckoFX v 45.0.7.0在本地(无web服务器)的html文件中,我们使用了以下代码,但"Error: TypeError: netscape.security.PrivilegeManager is undefined“
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 ();发布于 2019-02-05 08:17:58
您可以使用以下命令从任何位置写入文件:
File.WriteAllText("file.path", "contents_to_write");或者对于字节:
File.WriteAllBytes("file.path", byte[]);其中byte[]可以替换为要写入的字节数组。
希望,这会有帮助!
https://stackoverflow.com/questions/50752287
复制相似问题