如何使用壁虎FX写入到本地文件

问题描述 投票:0回答:1

我要开始位于本地的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 ();

javascript c# firefox gecko geckofx
1个回答
0
投票

您可以从任何地方通过写入文件:

File.WriteAllText("file.path", "contents_to_write");

或字节:

File.WriteAllBytes("file.path", byte[]);

其中byte[]可能是与字节数组写替换。

希望这有助于!

© www.soinside.com 2019 - 2024. All rights reserved.