-
解析xml主要用Dom 生成用 非官方提供的两种方法jdom dom4j查看全部
-
为标签添加文本内容,需要用setTestContent(),XML申明中standalone的意义查看全部
-
生成带文本的子节点 // 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();查看全部
-
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);查看全部
-
常用节点类型查看全部
-
JDOM方式生成XML文件设置文件格式 1,创建Format对象 Format format = Format.getCompactFormat(); 2,设置换行以及编码 format.setIndent(""); format.setEncoding("GBK"); 3将Format对象作为参数传进输出流创建方法中 XMLOutputter outputer = new XMLOutputter(format);查看全部
-
通过JDOM方式生成子节点以及节点间的文本 将子节点添加进上一级节点 ELement ele1 = new Element("title"); ele.addContent(ele1); 设置节点间的文本查看全部
-
JDOM 生成 XML 根节点 private void createXML() { //1.生成一个根节点 Element rss = new Element("rss"); //2.为节点添加属性 rss.setAttribute("version", "2.0"); //3.生成一个document对象 Document document = new Document(rss); //4.创建XMLOutputter的对象 XMLOutputter outputer = new XMLOutputter(); //5.利用outputer将document对象转换成xml文档 outputer.output(document, new FileOutputStream(new File("rssnews.xml"))); }查看全部
-
//设置生成的字符不转意,默认值为true,代表转义。 writer.setEscapeText(false);查看全部
-
//Dom4j生成子节点和内容 private void createXML() { Document document = DocumentHelper.createDocument(); Element rss = document.addElement("rss"); rss.addAttribute("version", "2.0"); Element channel = rss.addElement("channel"); Element title = rss.addElement("title"); title.setText("国内最新新闻"); OutputFormat format = OutputFormat.createPrettyPrint(); File file =new File("rssnews.xml"); XMLWriter writer; try { writer = new XMLWriter(new FileOutputStream(file),format); writer.write(document); writer.close(); }catch (IOException e) { e.printStackTrace(); } }查看全部
-
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(); }查看全部
-
//打开document handler.startDocument(); AttributesImpl attr=new AttributesImpl(); handler.startElement(null, null, "bookstore", attr); attr.clear();//用完一次清除一次。 attr.addAttribute(null, null, "id", null, "1"); handler.startElement(null, null, "book", attr); attr.clear(); attr.addAttribute(null, null, "ic", null, "1"); handler.startElement(null, null, "name", attr); handler.endElement(null, null, "name"); handler.endElement(null, null, "book"); handler.endElement(null, null, "bookstore"); 如果不加endElement就没有结束标签 每一个Element里面都要添加一个Attribute,可以重复利用查看全部
-
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树转换成XML文件 1,创建TransformerFactory对象,Factory为工厂类,不能直接new对象,通过newInstance获取对象 TransformerFactory tff = TransformerFactory.newInstance(); 2,通过tff获取Transfomer对象 Transformer tf = tff.newTransformer(); 3,指定换行格式 tf.setOutputProperty(OutputKeys.INDENT,"yes"); 4,用DOM树生成XML文件,将DOM树以及输出流作为参数传入 tf.transform(new DOMSource(Document do),new StreamResult(new File("books1.xml"));查看全部
举报
0/150
提交
取消