IE下写xml文件的两种方式(fso/saveAs)

  出于安全考虑,Firefox等浏览器不支持写本地文件。

  IE下可以通过以下几种方式写xml文件

  方式一:fso

  

复制代码 代码如下:

  // LoadXML()见上一篇IE下读取XML

  var xmlDom = loadXML("config.xml");

  var contentText = "";

  if(typeof xmlDom.xml != 'undefined') {

  contentText = xmlDom.xml;

  var fso = new ActiveXObject("Scripting.FileSystemObject");

  var file = fso.CreateTextFile("D:\\test\\test.xml", true);

  file.Write(contentText);

  file.Close();

  创建文本文件

  CreateTextFile(filename,overwrite,unicode)

  filename:文件名

  overwrite:如果文件存在,是否覆盖;缺省为false

  unicode:文件的内容是否存储为unicode文本;缺省为false

  方式二:saveAs

  在页面嵌入隐藏iframe,

  

复制代码 代码如下:

  <iframe name="export" src="about:blank" style="display:none;"></iframe>

  将xml内容写入iframe,另存为文件。

  

复制代码 代码如下:

  var frame = window.frames["export"];

  frame.document.open();

  frame.document.write(contentText);

  frame.document.execCommand("saveAs",true,"test.xml");

  frame.document.close();

  另外,IE XMLDOM有一个save方法

  提示没有权限,浏览IE的安全策略设置,也没发现可以修改权限的地方

  这种方法应该是不可行。