为了账号安全,请及时绑定邮箱和手机立即绑定

Java眼中的XML 文件写入

难度初级
时长 2小时 0分
学习人数
综合评分9.67
227人评价 查看评价
9.8 内容实用
9.7 简洁易懂
9.5 逻辑清晰
  • 7、利用handler对象进行xml文件内容的编写

    //打开document

    handler.startDocument();

    AttributesImpl attr = new AttributesImpl();

    handler.startElement("", "", "bookstore", attr);

    attr.clear;

    attr.addAttribute("","","id","","1");

    handler.startElement("","","book","attr");

    handler.endElement("", "", "bookstore");

    //关闭document

    handler.endDocument();


    查看全部
  • 2-1 创建根节点和 book 节点属性

    1、新建DOM树newDocument

    2、创建根节点createElement

    3、把根节点添加到DOM树中appendChild

    4、创建子节点

    5、把子节点添加到根节点中

    6、添加属性setAttribute

    注:

    1、实际代码编写顺序,先全部创建完,再一起添加

    2、属性不需要创建,直接添加


    查看全部
  • 四种生成xml方式对比:

    DOM:基于tree

    SAX:基于事件,不可向已生成xml文件添加结点

    JDOM、DOM4J:基于底层API

    查看全部
  • JDOM设置XML格式:

    Format format=Format.getCompactFormat();//创建Format对象,设置生成xml文档格式

    format.setIndent(String index)l//设置换行

    faomat.setEncoding(String encoding);//设置文档编码格式

    查看全部
  • 生成子节点:Element channel=new Element("channel");

    rss.addContent(channel);//添加channel结点到根节点

    Element title=new Element("title");

    title.setText("国内最新新闻");//设置结点文本内容

    channel.addContent(title);//添加title结点到channel结点


    查看全部
  • //生成根节点

    Element rss=new Element("rss");

    //为根节点属性,参数设置属性名和属性值

    rss.setAttribute("version","2.0");

    //生成一个document对象,含有一个根节点对象

    Document document=new Document(rss);

    //创建XMLOutputter对象

    XMLOutputter outputer=new XMLOutputter();

    //利用output将document对象转换为xml文档

    outputer.output(document, new FileOutputStream(new File("rssnews.xml")));


    查看全部
  • 定义是否需要将特殊字符转义:writer.setEscapeText(false);//默认为true

    查看全部
    0 采集 收起 来源:处理转义字符

    2018-07-29

  • 设置生成xml的格式:OutputFormat format=OutputFormat.createPrettyPrint();

    设置编码:format.setEncoding(String encoding);

    可在生成xml文件时加入格式:XMLWriter writer=new XMLWriter(new FileOutputStream(new File(String fileName)),format);

    查看全部
  • 生成根节点和属性:

    创建document对象,代表整个xml文档:Document document=DocumentHelper.createDocument();

    创建根节点:Element rss=document.addElement("rss");

    添加属性:rss.addAttribute(String arg0,String arg1);

    生成子节点和内容:Element channel=rss.addElement("channel");

    Element title=channel.addElement("title");

    设置文字内容:title.setText(String arg0);

    生成xml文件:XMLWriter writer=new XMLWriter(new FileOutputStream(new File("rssnews.xml")));

    writer.write(docment);

    writer.close();

    查看全部
  • 创建AttributesImpl对象用于创建属性:AttributeImpl attr=new AttributeImpl();

    添加属性:attr.addAttribute(String uri,String localName,String qName,String type,String value);//名称空间 URI,本地名称,限定(加前缀的)名称,字符串形式的属性类型,属性值

    清空已有属性:attr.clear();

    查看全部
  • 生成子节点及节点属性:

    利用TransformerHandler对象进行XML文件进行设置:

    TransformerHandler handler=SAXTransformerFactor.newInstance().newTransformerHndler();

    打开document:handler.startDocument();

    对Xml文件的格式设置需放在最开始。

    设置结点及其属性:handler.startElement(String uri,String localName,String qName,Attributes atts);//

    uri-名称空间 URI,如果元素没有名称空间 URI,或者未执行名称空间处理,则为空字符串

    localName - 本地名称(不带前缀),如果未执行名称空间处理,则为空字符串

    qName - 限定名(带有前缀),如果限定名不可用,则为空字符串

    atts - 连接到元素上的属性。如果没有属性,则它将是空 Attributes 对象。在 startElement 返回后,此对象的值是未定义的 

    设置属性的文本内容:handler.characters(char[] ch,int start,int length);//ch来自 XML 文档的字符,start数组中的开始位置,length从数组中读取的字符的个数

    关闭结点:handler.endElement(String uri,String localName,String qName);

    关闭document:handler.endDocument();


    查看全部
  • 创建一个SAXTransformerFactory对象:SAXTransformerFactory tff=(SAXTransformerFactory)SAXTransformerFactory.newInstance();

    创建TransformerHandler对象:TransformerHandler handler=tff.newTransformerHandler();

    创建Transformer对象:Transformer tf=handler.getTransformer();

    设置Transformer对象生成XML文件格式:tr.setOutputProperty(String name,String value);

    将XML文件与handler对象关联:handler.setResult(new StreamResult(new FileOutputStream(File file)));

    查看全部
  • 生成节点间的文本:Element name=document.creatElement("name");

    name.setTextContent("小王子");

    可设置xml文件是否有DTD、Schema约束:document.setXnlStandalone(true);//不含DTD、Schema约束

    查看全部
  • 创建Transformer对象:Transformer tf=TransformerFactory.newInstance().newTransformer();

    设置输出属性,指定了输出属性名称的非 null String,它可以是名称空间限定的:tf.setOutputProperty(String name,String value);

    通过transform方法将Document对象转化为Xml文件:tf.transform(new DOMSourse(document),new StreamResult(new File(String fileName)));

    查看全部
    0 采集 收起 来源:创建 XML 文件

    2018-07-28

  • 创建DocumentBuilder对象:DocumentBuilder db=new DocumentBuilderFactory.newInstance().newDocumentBuilder();

    创建Document对象:Document document=db.newDocument();

    创建节点:Element element=document.createElement(String tagName);

    添加结点:document.appendChild(Node newNode);

    添加属性:element.setAttribute(String name,String value);

    查看全部

举报

0/150
提交
取消
课程须知
本课程是 Java 的中级课程,需要各位小伙伴们熟悉 Java 面向对象的思想,并能熟练掌握 Java I/O 的相关知识。对什么是XML,如何读取XML有疑惑的小伙伴们,可以先去学习《Java眼中的XML---文件读取》进修。
老师告诉你能学到什么?
1、通过DOM方式生成xml文档 2、通过SAX方式生成xml文档 3、通过DOM4J方式生成xml文档 4、通过JDOM方式生成xml文档 5、不同生成方法大PK

微信扫码,参与3人拼团

意见反馈 帮助中心 APP下载
官方微信
友情提示:

您好,此课程属于迁移课程,您已购买该课程,无需重复购买,感谢您对慕课网的支持!