使用Javascript创建XML文件

javascript|xml|创建

 
在客户端创建XML文件可以使用FileSystemObject (FSO) 对象或直接使用XML Document Object Model (DOM)。若使用FSO则客户端必须安装 Window Script 5.5,使用XML DOM则需要在客户端安装有Microsoft XML Core Services。安全性方面需要在IE的安全设置中启用ActiveX控件。

1、使用FSO创建XML文件

使用FSO对象的GetSpecialFolder方法获得要创建文件所在目录,(GetSpecialFolder方法参数的设置可参见Window 脚本技术文档),然后使用CreateTextFile方法创建一个文本文件并获得一个指向该文件的对象引用,调用文本文件对象的WriteLine方法向文件中写内容,最后关闭对象。

值得注意的是在使用CreateTextFile创建文件时,最后一个指示文件创建方式的参数应该设置为true以表示以Unicode方式创建,并将XML文件的编码设置为UTF-16,这样创建的XML文件才能正常使用。

<script language=javascript>

function CreateXML(){

    var fso, tempfolder, xmlfile, schar;

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

    tempfolder = fso.GetSpecialFolder(0);

    xmlfile = fso.CreateTextFile(tempfolder+"XML.XML",true,true);

    schar = '\r';

    xmlfile.WriteLine('<?xml version="1.0" encoding="UTF-16" ?>'+schar);

    xmlfile.WriteLine('<document title="information">'+schar);

    for(var i=0;i<10;i++){

        xmlfile.WriteLine('<xmlnode type="node" name="node'+i+'" />'+schar);

    }

    xmlfile.WriteLine('</document>');

    xmlfile.Close();

}

</script>

2、使用XML DOM创建XML文件

首先创建一个DOMDocument对象,调用其load方法加载一个本地文件,在加载过程中如果文件不存在将会创建一个新文件,然后构造文档内容字符串,构造完后调用loadXML方法加载XML内容,最后调用save方法写文件。

使用XML DOM创建XML 文件需要非常小心内容格式是否正确,否则创建的文件中是不会有任何内容的,因为XMLDOC在写文件时已经判断了格式,如果不正确则save方法会失败。

<script language=javascript>

function CreateXML(){

      var xmldoc, xmlnode;

    xmldoc = new ActiveXObject("Msxml2.DOMDocument.4.0");

    xmldoc.load("C:\\XML.xml");

    schar = '\r';

    xmlhead = '<?xml version="1.0" encoding="UTF-16" ?>'+schar;

    xmltitle = '<documenttitle="information">'+schar;

    xmlnode = '';

    for(var i=0;i<10;i++){

        xmlnode = xmlnode + '<xmlnode type="node" name="node'+i+'" />'+schar;

    }

    xmlfoot = '</document>';

    strXML = xmlhead+xmltitle+xmlnode+xmlfoot;

    xmldoc.loadXML(strXML);

    xmldoc.save("C:\\XML.xml");

}

</script>

时间: 2016-07-07

使用Javascript创建XML文件的相关文章

XmlTextWriter创建XML文件

xml|创建 引言 随着XML的普及以及在动态WEB应用程序中大量应用,如何通过.NET创建,删除,修改XML文件变的也来也重要了.一个简单的概念是,XML文件跟大的文本文件并没有什么区别,同时它是先于.NET出现,很多ASP的开发者,当他需要程序输出XML文件的时候,通常都是用Response.Write()方法输出为XML文档. 使用Response.Write()的方式来输出XML文档,并不是一种那么好的方法,首先,我们用这种方法输出字符以组成XML文件的时候,我们会很担心输出的这些字符是

JavaScript操作XML文件之XML读取方法

 本文实例讲述了JavaScript操作XML文件之XML读取方法.分享给大家供大家参考.具体分析如下: 假设我们现在要读取下面的 info.xml 文件 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 <?xml version="1.0" encoding="gb2312"?> <root> <data id="1"> <name

javascript读取Xml文件做一个二级联动菜单示例

 这篇文章主要介绍了使用javascript中读取Xml文件做成的一个二级联动菜单,需要的朋友可以参考下  代码如下: <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">  <html>  <head>  <title>menu2level.html</title>  <meta http-equiv="content-type&quo

javascript读取Xml文件做一个二级联动菜单示例_javascript技巧

复制代码 代码如下: <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> <html> <head> <title>menu2level.html</title> <meta http-equiv="content-type" content="text/html; charset=UTF-8"> &

关于dom4j创建xml文件疑问

问题描述 importjava.io.File;importjava.io.FileNotFoundException;importjava.io.FileOutputStream;importjava.io.IOException;importjava.io.UnsupportedEncodingException;importorg.dom4j.Document;importorg.dom4j.DocumentHelper;importorg.dom4j.Element;importorg.

创建带有关联的 XML 架构的 XML 文件

xml|创建|架构 一.创建带有关联的 XML 架构的 XML 文件 1.创建新的 Windows 应用程序项目 首先需要在 Visual Basic 或 Visual C# 中创建新的 Windows 应用程序.创建一个新项目并将其命名为"XMLCustomerList" ,从"文件"菜单中指向"新建",然后单击"项目"以显示"新建项目"对话框. 根据要使用的语言,在"项目类型"窗格中

批量装载XML文件到SQL SERVER 2K

server|xml 出于项目的需求,要从一个服务器的SQL导出数据然后导入到另一SQL服务器,项目要求不能作简单的数据同步,所以想采用XML数据格式处理.网上看到很多文章都是大同小异,说的不是很详细,例子也 全,基本都看不大懂.现在还有俩个 问题: 1.datetime类型字段有没有更好的处理方法? 2.主键重复问题,不忽略而是替换怎么处理?有什么参数嘛? 以下是偶的代码,共三部分:形成SCHEMA文件.从SQL SERVER创建XML数据.导入XML到SQL SERVER include文件

如何把DataSet保存为XML文件

xml XML和.NET是完全融合的,很多.NET的服务器控件都具备了一种或更多种创建XML文件的能力,DataSet类就包含若干种创建XML文件的方法,在这篇文章中,我们将创建DataSet与XML之间的连接的例子,而这个例子的作用就是从数据库里读出数据填入DataSet对象中,然后再从DataSet对象输出为XML文件保存到磁盘里,当然了 ,我们还可以为XML文件创建与它相关的schema文件.   把DataSet保存为XML文件中的asp.net页面文件(.aspx),简单的甚至可以用可

javascript调用XML制作连动下拉框

传统的HTML页面中连动下拉框采用了两种方法:1)直接将下拉框中的内容hardcode于html的javascript中,调用javascript函数循环写入下拉框中.这种方法不适用于下拉框内容经常改变的情况.因为数据源和javascript程序写死在同一页面.   <html><head><title>List</title><meta http-equiv="Content-Type" content="text/ht