-
RSS格式的xml文件:RSS文件通常是用来描述和同步网站内容的一种格式,其本质是xml文件。 xml文件存在的目的:通常是用来共享数据。查看全部
-
XMLOutputter outputer = new XMLOutputter();//创建XMLOutputter对象 outputer.output(doucument,new FileOutputStream(new File("rssnews")))//Document oc,OutputStream out查看全部
-
1、rss文件格式:
<?xml version="1.0" encoding="gb2312"?>
<rss version="2.0">
<channel>
</channel>
</rss>
2、xml文件格式:
<?xml version="1.0" encoding="UTF-8"?>
<book>
</book>
查看全部 -
*通过 DOM 方式生成 XML 文档:
1、创建以下对象
DocumentBuilderFactory
DocumentBuilde
Document
2、创建DOM树—添加根节点、节点属性—将DOM树转换成XML文件—添加子节点
*通过 SAX 方式生成 XML 文档:
1、创建以下对象
SAXTransformerFactory
TransformerHandler
Transformer
2、生成xml文件—创建Result对象,关联handler对象—创建根节点、节点属性及子节点
查看全部 -
生成xml的四种方式的性能对比:SAX > DOM4J > JDOM > DOM 在一个课程测试用例中四种方式的用时(Ms): DOM:418 SAX:3 JDOM:158 DOM4J:59 DOM/SAX官方自带: DOM生成DOM树加载到内存,方便修改,性能慢。 SAX性能最高,但是不能返回修改便签中的内容 DOM4J相对综合最好,应用广泛查看全部
-
生成带文本的子节点 // 7.利用handler对象进行xml文件内容的编写O // 打开document handler.startDocument(); AttributesImpl attr = new AttributesImpl(); handler.startElement("", "", "bookstore", attr); for (Book book : bookList) { attr.clear(); attr.addAttribute("", "", "id", "", book.getId()); handler.startElement("", "", "book", attr); // 创建name节点 if (book.getName() != null && !book.getName().trim().equals("")) { attr.clear(); handler.startElement("", "", "name", attr); handler.characters(book.getName().toCharArray(), 0, book .getName().length()); handler.endElement("", "", "name"); } ...//类似创建name节点(price、language...等等) handler.endElement("", "", "book"); } handler.endElement("", "", "bookstore"); // 关闭document handler.endDocument(); } Ps1:setResult()必须在startDocument()之前调用。 Ps2:void characters(char[] ch,int start,int length)throws SAXException查看全部
-
使用SAX生成XML文件中的节点以及节点属性 1,打开Document handler.startDocument(); 2,创建属性对象 AttributesiImpl ai = new AttributesImpl(); 3,创建无属性节点 handler.startElement("","","bookStore","ai"); 4,创建有属性节点 ai.clear();(清除原有属性内容) ai.addAttribute("","","id","","1");(设置新的属性内容) handler.startElement("","","book","ai"); 5,结束节点 handler.endElement(); 6,结束Document handler.endDocument();查看全部
-
用DOM方法创建XML文件: 1、获取DocumentBuilderFactory对象: DocumentBuilderFactory dbf = DocumentBuilderFactory.newInstance(); 2、通过DocumentBuilderFactory对象,获取DocumentBuilder对象: DocumentBuilder db = dbf.newDocumentBuilder(); 3、通过DocumentBuilder的newDocument方法获取Document对象,代表着要生成的DOM树 Document do = db.newDocument(); 4、将根节点添加进DOM树 Element bookstore= document.createElement("bookStore"); document.appendChild(bookstore); 5、将子节点添加进DOM树 Element book = document.createElement("book"); bookstore.appendChild(book) 6、将子节点的属性及属性值添加进DOM树 book.setAttribute("id","1"); 即:通过当前节点的appendChild("节点名");方法为其添加子节点 通过document的createElement("节点名");方法来建立新的节点查看全部
-
用DOM方法创建XML文件: 1、获取DocumentBuilderFactory对象: DocumentBuilderFactory dbf = DocumentBuilderFactory.newInstance(); 2、通过DocumentBuilderFactory对象,获取DocumentBuilder对象: DocumentBuilder db = dbf.newDocumentBuilder(); 3、通过DocumentBuilder的newDocument方法获取Document对象,代表着要生成的DOM树 Document do = db.newDocument(); 4、将根节点添加进DOM树 Element bookstore= document.createElement("bookStore"); document.appendChild(bookstore); 5、将子节点添加进DOM树 Element book = document.createElement("book"); bookstore.appendChild(book) 6、将子节点的属性及属性值添加进DOM树 book.setAttribute("id","1"); 即:通过当前节点的appendChild("节点名");方法为其添加子节点 通过document的createElement("节点名");方法来建立新的节点查看全部
-
public void createXML() { // 生成xml // 1.创建一个TransformerFactory类的对象 SAXTransformerFactory tff = (SAXTransformerFactory) SAXTransformerFactory .newInstance(); try { // 2.通过SAXTransformerFactory对象创建一个TransformerHandler对象 TransformerHandler handler = tff.newTransformerHandler(); // 3.通过handler对象创建一个Transformer对象 Transformer tr = handler.getTransformer(); // 4.通过Transformer对象对生成的xml文件进行设置 // 设置xml的编码 tr.setOutputProperty(OutputKeys.ENCODING, "UTF-8"); // 设置xml的“是否换行” tr.setOutputProperty(OutputKeys.INDENT, "yes"); // 5.创建一个Result对象 File f = new File("src/res/newbooks.xml"); if (!f.exists()) { f.createNewFile(); } // 6.创建Result对象,并且使其与handler关联 Result result = new StreamResult(new FileOutputStream(f)); handler.setResult(result);查看全部
-
如果要频繁修改选择DOM方式,否则选择SAX(速率较快)。 假设我现在要生成一个xml。让它去存储书籍信息。首先写根节点bookstore,然后添加第一本书,然后添加第二本书,这时候发现第一本书中有某一个内容忘记添加了,想回去进行修改或增加。这时候我们发现SAX解析是无法做到这一点的,因为SAX解析是基于事件的。基于事件的模型呢,把某一个标签走完了之后,它是不能走回头路的,它没有状态性可言。所以在使用DOM还是SAX进行选择时,要考虑到你是不是要对生成的模型进行频繁的修改。如果不是呢,建议选用SAX,因为SAX的性能也是非常高的。查看全部
-
JDOM方式生成XML文件设置文件格式 1,创建Format对象 Format format = Format.getCompactFormat(); 2,设置换行以及编码 format.setIndent("");//若括号中为"\n"则会换两行 format.setEncoding("GBK"); 3将Format对象作为参数传进输出流创建方法中 XMLOutputter outputer = new XMLOutputter(format);查看全部
-
XML文件中第一行StandAlone表示该XML文件是否是独立的,设置为yes(true)为默认值,且不显示,表示独立没有外部文件为其服务,设置为no表示外部有其他文件为其服务<br> new Document().setXmlStandalone("true");//将StandAlone设为yes 1、将子节点添加进DOM树<br> Element ele2 = new Element("name");<br> ele1.append(ele2);<br> 2、设置子节点的文本内容<br> ele2.setTextContent("String");查看全部
-
使用DOM4J创建XML文件中rss根节点步骤 1,创建Document对象,代表着整个XML文档 Document do = DocumentHelper.createDocument(); 2,创建根节点rss Element rss = do.addElement("rss"); 3,向rss根节点中添加version属性 rss.addAttribute("version","2.0"); 4,创建XML文档的输出流 File file = new File("xxx"); XMLWriter writer = new XMLWriter(new FileOutputStream(file)); 5,将程序所写的XML文档内容与输出流联系起来 writer.write(do); 6,关闭资源 writer.close();查看全部
-
XML文件中第一行StandAlone表示该XML文件是否独立设置为yes为默认值,且不显示,表示独立没有外部文件为其服务,设置为no表示外部有其他文件为其服务<br> new Document().setXmlStandalone("yes");<br> 生成XML文件子节点的文本内容<br> 1,将子节点添加进DOM树<br> Element ele2 = new Element("name");<br> ele1.append(ele2);<br> 2, 设置子节点的文本内容<br> ele2.setTextContent("String");查看全部
举报
0/150
提交
取消