XML解析器常见的有两种:

1.SAX解析器,用于xml的简单API

2.DOM解析器,文档对象模型

DOM就是利用对象来把文本模型化,但是模型实现有以下几个基本的点:

1. 用来表示、操作文档的接口

2.接口行为、属性

3.接口之间的关系和互属性

在DOM接口中有四个基本接口:Document、Node、NodeList、NamedNodeMap

Node对象:DOM中最基本的对象

Document对象:代表整个XML文档

NodeList对象包含一个或者是多个Node的列表

Element对象代表xml文档中的标签元素

创建xml

/创建xml的方法
public static void createxml() throws Exception{
DocumentBuilderFactory dbf=DocumentBuilderFactory.newInstance();
DocumentBuilder db=dbf.newDocumentBuilder();
Document document= db.newDocument();
//创建一个bookstore节点
Element bookstore=document.createElement("bookstore");
Element book=document.createElement("book");
Element book1=document.createElement("book");
//创建一个name节点并添加在book下
Element name= document.createElement("name");
Element author= document.createElement("author");
Element name1= document.createElement("name");
Element author1= document.createElement("author"); book.appendChild(name);
book.appendChild(author);
book1.appendChild(name1);
book1.appendChild(author1);
//添加文本到name节点
name.setTextContent("张三");
author.setTextContent("李四");
name1.setTextContent("王五");
author1.setTextContent("黄六");
//设置book属性名以及属性值
book.setAttribute("id", "");
book1.setAttribute("id", "");
//向bookstore根节点中添加子节点
bookstore.appendChild(book);
bookstore.appendChild(book1);
//添加跟节点
document.appendChild(bookstore);
//树的结构已经生成,接下来生成xml文件
//前几步都是一定的
TransformerFactory tft= TransformerFactory.newInstance();
Transformer tf= tft.newTransformer();
tf.setOutputProperty(OutputKeys.INDENT, "yes");
//创建新的xml文件并导入document
tf.transform(new DOMSource(document), new StreamResult(new File("book1.xml")));
}

如何用Dome4j(2.2.1)创建Xml的更多相关文章

  1. 安卓开发学习笔记(二):如何用Android Stuidio在res资源下创建xml视图文件

    笔者在看了相关的教程之后发现教程当中的资源已经过时了.当我们在创建了一个新的空白的工程之后,会发现其文件夹下面的分文件夹目录和官方的教程文件结构完全不同,因此会引起很多误解.笔者使用的是最新版的And ...

  2. .net中xml文件的导入使用(包括创建xml和导入xml)

    上次有说到.net 创建xml文件的方法(一种固定方式,一种动态方法),这次记录一下怎样导入xml文件 1.导入xml文件的方法 1)xml文件格式

  3. .net中创建xml文件的两种方法

    .net中创建xml文件的两种方法 方法1:根据xml结构一步一步构建xml文档,保存文件(动态方式) 方法2:直接加载xml结构,保存文件(固定方式) 方法1:动态创建xml文档 根据传递的值,构建 ...

  4. C#操作XML学习之创建XML文件的同时新建根节点和子节点(多级子节点)

    最近工作中遇到一个问题,要求创建一个XML文件,在创建的时候要初始化该XML文档,同时该文档打开后是XML形式,但是后缀名不是.在网上找了好些资料没找到,只能自己试着弄了一下,没想到成功了,把它记下来 ...

  5. dom4j创建xml

    在前边介绍SAX,PULL等等既然能解析,当然也能生成.不过这里介绍dom4j创建xml文件,简单易懂. dom4j是独立的api,官网:http://www.dom4j.org/    可以去这下载 ...

  6. Java读取、创建xml(通过dom方式)

    创建一个接口 XmlInterface.java public interface XmlInterface {           /**         * 建立XML文档         * @ ...

  7. 创建XML

    //创建XML XElement xelement = new XElement("request", new XElement("head", new XEl ...

  8. Java 创建xml文件和操作xml数据

    java中的代码 import java.io.File; import java.io.StringWriter; import javax.xml.parsers.DocumentBuilder; ...

  9. TinyXML2读取和创建XML文件 分类: C/C++ 2015-03-14 13:29 94人阅读 评论(0) 收藏

    TinyXML2是simple.small.efficient C++ XML文件解析库!方便易于使用,是对TinyXML的升级改写!源码见本人上传到CSDN的TinyXML2.rar资源:http: ...

随机推荐

  1. DOM 事件有哪些阶段?谈谈对事件代理的理解

    分为三大阶段:捕获阶段--目标阶段--冒泡阶段 事件代理简单说就是:事件不直接绑定到某元素上,而是绑定到该元素的父元素上,进行触发事件操作时(例如'click'),再通过条件判断,执行事件触发后的语句 ...

  2. Flutter移动电商实战 --(46)详细页_自定义TabBar Widget

    主要实现详情和评论的tab provide定义变量 自己做一个tab然后用provide去控制 定义两个变量来判断是左侧选中了还是右侧选中了.并定义一个方法来接受参数,修改是左侧还是右侧选中的状态值 ...

  3. python-pptx add_image_picture

  4. VS中卸载Visual Assist X

    Tools=>Extensions and updates=>找到Visual Assist X 卸载:

  5. int 和String之间的相互转换

    int ---> String 1. 和 "" 进行拼接 2. 使用String类中的静态方法valueOf: public static String valueOf(in ...

  6. SQL语言Select经典语句

    -- 示例数据 Select * From Employee Select * From Department -- 返回工资最高的员工的信息 Select * From Employee where ...

  7. 29 Flutter Dialog AlertDialog 、SimpleDialog、showModalBottomSheet、showToast

    pubspec.yaml fluttertoast: ^ Dialog.dart import 'package:flutter/material.dart'; import 'package:flu ...

  8. asp.net怎样实现批量下载文件(非打包形式下载)

    问题: 我想实现的是一个一个的下载. 比如我有一个文件列表.通过checkbox选择.通过单击下载按钮下载选中文件. 百度到都是用打包形式实现批量下载. 这是我自己写的代码,但是点击下载后只能下载一个 ...

  9. Delphi中动态加载TreeView信息

    unit Unit3; interface uses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms ...

  10. jQuery学习四——效果

    1.显示,隐藏: <!DOCTYPE html> <html> <head> <title>jquery事件</title> </he ...