预习Dom4J之:把XML输出到Java控制台
来源:互联网 发布:卡秋莎软件 编辑:程序博客网 时间:2024/06/08 05:59
结果:
准备:
xml文件
<?xml version="1.0" encoding="UTF-8"?><!DOCTYPE Students [<!ELEMENT Students (Student*)><!ELEMENT Student (Name,Age)><!ATTLIST Student id CDATA #REQUIRED> <!ATTLIST Student remark CDATA #IMPLIED> <!ELEMENT Name (#PCDATA)><!ELEMENT Age (#PCDATA)>]><Students><Student id="s001" remark="帅哥"><Name>洛清风</Name><Age>18</Age></Student><Student id="s002"><Name>穆修杉</Name><Age>19</Age></Student></Students>
开始:
1)导入Dom4J到Java工程
2)设计好打印xml到控制台的方法
/** * <p>Title:printXML</p> * <p>Description:打印xml</p> * @param elm需要打印的xml * @param indent首次缩进倍数 */public static void printXML(Element elm,int indent){//缩进字符串String indentStr=" ";//打印缩进for(int i=0;i<indent;i++){System.out.print(indentStr);}//得到该节点子节点的集合List nodes=elm.elements();//获得其所有属性List attrs=elm.attributes();StringBuffer attrStr=new StringBuffer("");if(attrs.size()>0){for (Iterator it = attrs.iterator(); it.hasNext();){Attribute attr=(Attribute)it.next();attrStr.append(" "+attr.getName()+"=\""+attr.getText()+"\"");}}//如果有子节点则换行,没有子节点不换行String enterStr=(nodes.size()<=0)?"":"\n";//得到标签的内容String elmStr=elm.getText();//打印前标签System.out.print("<"+elm.getName()+attrStr+">"+elmStr+enterStr);//遍历子节点集合 并递归这个子节点for (Iterator it = nodes.iterator(); it.hasNext();){printXML((Element) it.next(),indent+1);}//如果有孩子节点 后标签不缩进if(nodes.size()>0){for(int i=0;i<indent;i++){System.out.print(indentStr);}}//打印后标签System.out.println("</"+elm.getName()+">");}3)在主函数获得需要打印的xml并调用上述方法
public static void main(String[] args) {SAXReader reader=new SAXReader();Document document=null;try {document=reader.read(new File(System.getProperty("user.dir")+File.separator+"xml"+File.separator+"Students.xml"));} catch (DocumentException e) {// TODO Auto-generated catch blocke.printStackTrace();}printXML(document.getRootElement(),0);}
阅读全文
0 0
- 预习Dom4J之:把XML输出到Java控制台
- openfire 开发时输出xml到控制台
- openfire 开发时输出xml到控制台
- openfire 开发时输出xml到控制台
- java操作xml之dom4j
- DOM4J 学习总结之 修改节点信息 将内存的DOM输出到xml文件
- logback之二:输出日志到控制台
- java将控制台信息输出到文件
- JAVA 获取cmd输出内容到控制台
- java将控制台信息输出到文件
- Java 解析 XML 文件之 DOM4J 解析
- JAVA 解析XML之JDOM、DOM4J方式
- Java解析XML之dom4j方式
- (补)Java解析XML之dom4j
- Java解析XML之导入dom4j
- dom4j 把 文本 转成 XML
- Java 入门 之 控制台输出乱码
- log4j输出到控制台
- Android源码编译(一)环境配置,下载源码
- 在Hadoop上运行python程序错误集合
- 第1篇 初级排序算法
- 杂记:jenkins中用到的一些lunix命令
- 解耦-大宽表
- 预习Dom4J之:把XML输出到Java控制台
- android中延迟执行某个任务
- java DES加密
- window下spacemacs找不到init.el文件的解决方法
- 矩阵覆盖
- 我与插值萍水相逢续(1): 双线性插值(Bilinear Interpolation)原理及使用
- layui--一个不错的页面插件框架
- 非主体结构元素 3
- linux C 读文件