XML入门教程:向XML文件存储数据

xml|教程|入门教程|数据

通常,我们在数据库中存储数据。不过,如果希望数据的可移植性更强,我们可以把数据存储XML文件中。

创建并保存XML文件

如果数据要被传送到非Windows平台上的应用程序,那么把数据保存在XML文件中是有好处的。请记住,XML有很强的跨平台可移植性,并且数据无需转换!

首先,我们将学习如何创建并保存一个XML文件。下面的这个XML文件将被命名为"test.xml",并被保存在服务器上的c目录中。我们将使用ASP和微软的XMLDOM对象来创建并保存这个XML文件:

<%Dim xmlDoc, rootEl, child1, child2, p'创建XML文档Set xmlDoc = Server.CreateObject("Microsoft.XMLDOM")'创建根元素并将之加入文档Set rootEl = xmlDoc.createElement("root")xmlDoc.appendChild rootEl'创建并加入子元素Set child1 = xmlDoc.createElement("child1")Set child2 = xmlDoc.createElement("child2")rootEl.appendChild child1rootEl.appendChild child2'创建 XML processing instruction'并把它加到根元素之前Set p=xmlDoc.createProcessingInstruction("xml","version='1.0'")xmlDoc.insertBefore p,xmlDoc.childNodes(0)'把文件保存到c目录xmlDoc.Save "c:\test.xml"%>

如果您打开这个被保存的文件,它会使这个样子("test.xml"):

<?xml version="1.0"?><root>  <child1 />  <child2 /></root>

真实的表单例子

现在,我们看一个真实的表单例子。

我们首先看一下这个被用在例子中的HTML表单:下面的HTML表单要求用户输入他们的名字、国籍以及电子邮件地址。随后这些信息会被写到一个XML文件,以便存储。

"customers.htm":

<html><body><form action="saveForm.asp" method="post"><h1>请输入您的联系信息:</h1><label>名字: </label><p><input type="text" id="fname" name="fname"></p><label>姓氏: </label><p><input type="text" id="lname" name="lname"></p><label>国家: </label><p><input type="text" id="country" name="country"></p><label>邮件: </label><p><input type="text" id="email" name="email"></p><p><input type="submit" id="btn_sub" name="btn_sub" value="Submit"><input type="reset" id="btn_res" name="btn_res" value="Reset"></p></form></body></html>

用于以上HTML表单的action被设置为"saveForm.asp"。"saveForm.asp"文件是一个ASP页面,可循环遍表单域,并把它们的值存储在一个XML文件之中:

<%dim xmlDocdim rootEl,fieldName,fieldValue,attIDdim p,i'如果有错误发生,不允许程序终止On Error Resume NextSet xmlDoc = server.CreateObject("Microsoft.XMLDOM")xmlDoc.preserveWhiteSpace=true'创建并向文档添加根元素Set rootEl = xmlDoc.createElement("customer")xmlDoc.appendChild rootEl'循环遍历Form集for i = 1 To Request.Form.Count  '除去表单中的button元素  if instr(1,Request.Form.Key(i),"btn_")=0 then    '创建field 和 value 元素,以及 id 属性    Set fieldName = xmlDoc.createElement("field")    Set fieldValue = xmlDoc.createElement("value")    Set attID = xmlDoc.createAttribute("id")    '把当前表单域的名称设置为id属性的值    attID.Text = Request.Form.Key(i)    '把id属性添加到field元素    fieldName.setAttributeNode attID    '把当前表单域的值设置为value元素的值    fieldValue.Text = Request.Form(i)    '将field元素作为根元素的子元素进行添加    rootEl.appendChild fieldName    '将value元素作为field元素的子元素进行添加    fieldName.appendChild fieldValue  end ifnext'添加XML processing instruction'并把它加到根元素之前Set p = xmlDoc.createProcessingInstruction("xml","version='1.0'")xmlDoc.insertBefore p,xmlDoc.childNodes(0)'保存XML文件xmlDoc.save "c:\Customer.xml"'释放所有的对象引用set xmlDoc=nothingset rootEl=nothingset fieldName=nothingset fieldValue=nothingset attID=nothingset p=nothing'测试是否有错误发生if err.number<>0 then  response.write("Error: No information saved.")else  response.write("Your information has been saved.")end if%>

注释:如果被指定的XML文件名已经存在,那个文件会被覆盖!

XML文件会由上面的代码生成,大致的样子是这样的:("Customer.xml"):

<?xml version="1.0" ?><customer>  <field id="firstName">    <value>Hege</value>   </field>  <field id="lastName">    <value>Refsnes</value>   </field>  <field id="country">    <value>Norway</value>   </field>  <field id="email">    <value>mymail@myaddress.com</value>   </field></customer>

以上是小编为您精心准备的的内容,在的博客、问答、公众号、人物、课程等栏目也有的相关内容,欢迎继续使用右上角搜索按钮进行搜索xml
, 存储
, 文件
, 数据
, 表单
一个
,以便于您获取更多的相关知识。

时间: 2024-12-23 15:35:59

XML入门教程:向XML文件存储数据的相关文章

XML入门教程:XML是如何被利用的?

xml|教程|入门教程 理解这一点很重要,即XML是被设计为存储.传输以及交换数据的.XML不是被设计为用来显示数据的. XML可以将HTML与数据分离 通过使用XML,您的数据可存储于HTML之外. 当我们使用HTML来显示数据时,数据存储于HTML中.通过使用XML,数据可以被存储在单独的XML文件中.这样做的话,您就可以把注意力集中在使用HTML进行数据布局和显示上面,并确保底层数据的改变不会牵扯到HTML的改变. XML数据也可作为数据岛存储于HTML页面内部.您仍然可以专注于使用HTM

XML入门教程:验证XML是合法的XML

xml|教程|入门教程 拥有正确语法的XML是构成良好的XML. 通过某种DTD进行了验证的XML是合法的XML. 构成良好的XML文档 一个"构成良好"的XML文档拥有正确的语法. 一个"W构成良好"的XML文档会遵守前几章介绍过的XML语法规则: XML文档必须有根元素 XML文档必须有关闭标签 XML标签对大小写敏感 XML元素必须被正确的嵌套 XML属性必须加引号 <?xml version="1.0" encoding="

XML入门教程:掌握学习 XML 语法规则

xml|教程|入门教程|语法 XML的语法规则既很简单,又很严格.这些规则很容易学习,也很容易使用. 正因为如此,创建可读取及操作XML的软件不是一件难事. 一个XML文档的例子 XML使用一种可自我描述的简单的语法. <?xml version="1.0" encoding="ISO-8859-1"?><note><to>Tove</to><from>Jani</from><headin

XML入门教程:XML CDATA

xml|教程|入门教程 所有XML文档中的文本均会被解析器解析. 只有CDATA区段(CDATA section)中的文本会被解析器忽略. Parsed Data XML解析器通常会解析XML文档中所有的文本. 当某个XML元素被解析时,其标签之间的文本也会被解析: <message>此文本也会被解析</message> 解析器之所以这么做是因为XML元素可包含其他的元素,就像这个例子中,其中的<name>元素包含着另外的两个元素(first 和 last): <

数据结构-java写宿舍管理系统要求用文件存储数据

问题描述 java写宿舍管理系统要求用文件存储数据 数据结构的课设 让写一个宿舍管理系统,用java写怎么才能不用数据库存储数据,而用文件啊...求大神帮忙!!!! 解决方案 对于一些小文件,我们可以一次性读取它的所有字节,然后一次提交到数据库 /// /// 这个方法演示了如何一次提交所有的字节.这样导致的结果是:应用程序立即需要申请等同于文件大小的内存 /// static void SubmitFileByOnce() { string file = @"F:功夫熊猫.rmvb"

实例详解Android文件存储数据方式_Android

总体的来讲,数据存储方式有三种:一个是文件,一个是数据库,另一个则是网络.下面通过本文给大家介绍Android文件存储数据方式. 1.文件存储数据使用了Java中的IO操作来进行文件的保存和读取,只不过Android在Context类中封装好了输入流和输出流的获取方法. 创建的存储文件保存在/data/data/<package name>/files文件夹下. 2.操作. 保存文件内容:通过Context.openFileOutput获取输出流,参数分别为文件名和存储模式. 读取文件内容:通

Android用文件存储数据的方法

本文实例为大家分享了Android用文件存储数据的具体代码,供大家参考,具体内容如下 存储数据示例: private void saveFileData() { BufferedWriter writer = null; try { FileOutputStream out = openFileOutput("data", MODE_PRIVATE);//保存的文件名为"data" writer = new BufferedWriter(new OutputStre

实例详解Android文件存储数据方式

总体的来讲,数据存储方式有三种:一个是文件,一个是数据库,另一个则是网络.下面通过本文给大家介绍Android文件存储数据方式. 1.文件存储数据使用了Java中的IO操作来进行文件的保存和读取,只不过Android在Context类中封装好了输入流和输出流的获取方法. 创建的存储文件保存在/data/data/<package name>/files文件夹下. 2.操作. 保存文件内容:通过Context.openFileOutput获取输出流,参数分别为文件名和存储模式. 读取文件内容:通

XML入门教程:了解认识XML

xml|教程|入门教程 XML被设计用来描述数据,其焦点是数据的内容. HTML被设计用来显示数据,其焦点是数据的外观. 应该掌握的基础知识: 在您继续学习之前,需要对以下知识有基本的了解: HTML / XHTML JavaScript or VBScript 什么是XML? XML指可扩展标记语言(EXtensible Markup Language) XML是一种标记语言,很类似HTML XML被设计用来描述数据 XML标签没有被预定义.您需要自行定义标签. XML使用文件类型声明(DTD