importjava.io.IOException;importjava.io.StringWriter;importjava.util.ArrayList;importjava.util.HashMap;importjava.util.Iterator;importjava.util.List;importjava.util.Map;importjava.util.Set;importjava.util.logging.Level;importjava.util.logging.Logger;importorg.dom4j.Document;importorg.dom4j.DocumentException;importorg.dom4j.DocumentHelper;importorg.dom4j.Element;importorg.dom4j.io.OutputFormat;importorg.dom4j.io.XMLWriter;/***
*@authory*/
public classTest {/***@paramargs the command line arguments*/
public static void main(String[] args) throwsDocumentException {
Map map = new HashMap();
map.put("name", "李四");
map.put("age", 25);//System.out.println(map2xml(map));
List list = new ArrayList();
list.add("测试1");
list.add("测试2");
list.add("测试3");//System.out.println(list2xml(list,"items"));
List> listMap = new ArrayList>();
Map map1 = new HashMap();
map1.put("name", "张三");
map1.put("age", 23);
listMap.add(map1);
map1= new HashMap();
map1.put("name", "李四");
map1.put("age", 24);
listMap.add(map1);
map1= new HashMap();
map1.put("name", "王五");
map1.put("age", 25);
listMap.add(map1);
System.out.println(listMap2xml(listMap,"users","user"));
}public static String listMap2xml(List>list,String listRoot,String mapRoot){
Document doc=DocumentHelper.createDocument();
Element rootEle= doc.addElement("result");
Element noEle= rootEle.addElement("no");
Element msgEle= rootEle.addElement("msg");if(null!=list && !list.isEmpty()){
noEle.setText("1");
msgEle.setText("成功获取相关信息");
Element listRootEle=rootEle.addElement(listRoot);for(Mapmap:list){
Element mapRootELe=listRootEle.addElement(mapRoot);
Set> set =map.entrySet();
Iterator> iter =set.iterator();while(iter.hasNext()){
Map.Entry entry = (Map.Entry)iter.next();
Element ele=mapRootELe.addElement(entry.getKey());
ele.setText(String.valueOf(entry.getValue()));
}
}
}else{
noEle.setText("0");
msgEle.setText("没有获取到相关信息");
}
StringWriter sw= newStringWriter();
OutputFormat format=OutputFormat.createPrettyPrint();
format.setEncoding("utf-8");try{
XMLWriter xmlWriter= newXMLWriter(sw, format);
xmlWriter.write(doc);
}catch(IOException ex) {
Logger.getLogger(Test.class.getName()).log(Level.SEVERE, null, ex);
}finally{try{
sw.close();
}catch(IOException ex) {
Logger.getLogger(Test.class.getName()).log(Level.SEVERE, null, ex);
}
}returnsw.toString();
}public static String list2xml(Listlist,String itemRoot){
Document doc=DocumentHelper.createDocument();
Element rootEle= doc.addElement("result");
Element noEle= rootEle.addElement("no");
Element msgEle= rootEle.addElement("msg");if(null!=list && !list.isEmpty()){
noEle.setText("1");
msgEle.setText("成功获取相关信息");
Element itemRootEle=rootEle.addElement(itemRoot);for(Object obj:list){
Element ele= itemRootEle.addElement("item");
ele.setText(String.valueOf(obj));
}
}else{
noEle.setText("0");
msgEle.setText("没有获取到相关信息");
}
StringWriter sw= newStringWriter();
OutputFormat format=OutputFormat.createPrettyPrint();
format.setEncoding("utf-8");try{
XMLWriter xmlWriter= newXMLWriter(sw, format);
xmlWriter.write(doc);
}catch(IOException ex) {
Logger.getLogger(Test.class.getName()).log(Level.SEVERE, null, ex);
}finally{try{
sw.close();
}catch(IOException ex) {
Logger.getLogger(Test.class.getName()).log(Level.SEVERE, null, ex);
}
}returnsw.toString();
}public static String map2xml(Mapmap) {
Document doc=DocumentHelper.createDocument();
Element rootEle= doc.addElement("result");
Element noEle= rootEle.addElement("no");
Element msgEle= rootEle.addElement("msg");if(null!=map && !map.isEmpty()){
noEle.setText("1");
msgEle.setText("成功获取相关信息");
Set> set =map.entrySet();
Iterator> iter =set.iterator();while(iter.hasNext()){
Map.Entry entry = (Map.Entry) iter.next();
Element ele=rootEle.addElement(entry.getKey());
ele.setText(String.valueOf(entry.getValue()));
}
}else{
noEle.setText("0");
msgEle.setText("没有获取到相关信息");
}
StringWriter sw= newStringWriter();
OutputFormat format=OutputFormat.createPrettyPrint();
format.setEncoding("utf-8");try{
XMLWriter xmlWriter= newXMLWriter(sw, format);
xmlWriter.write(doc);
}catch(IOException ex) {
Logger.getLogger(Test.class.getName()).log(Level.SEVERE, null, ex);
}finally{try{
sw.close();
}catch(IOException ex) {
Logger.getLogger(Test.class.getName()).log(Level.SEVERE, null, ex);
}
}returnsw.toString();
}public static voidtest4() {
Document doc=DocumentHelper.createDocument();
Element rootEle= doc.addElement("sudent");
Element nameEle= rootEle.addElement("name");
nameEle.setText("张三");
Element ageEle= rootEle.addElement("age");
ageEle.setText("25");try{
StringWriter sw= newStringWriter();
OutputFormat format=OutputFormat.createPrettyPrint();
format.setEncoding("utf-8");
XMLWriter xmlWriter= newXMLWriter(sw, format);
xmlWriter.write(doc);
System.out.println(sw.toString());
}catch(IOException ex) {
Logger.getLogger(Test.class.getName()).log(Level.SEVERE, null, ex);
}
}public static void test3() throwsDocumentException {
String str= "<?xml version=\"1.0\" encoding=\"UTF-8\"?>"
+ ""
+ " "
+ " Think in Java"
+ " 120.0"
+ " "
+ " 001"
+ " 002"
+ " 003"
+ " "
+ " "
+ " "
+ " Think in Java2"
+ " 220.0"
+ " "
+ "";
Document doc=DocumentHelper.parseText(str);
Element books=doc.getRootElement();
List childEles =books.elements();
Iterator iter =childEles.iterator();while(iter.hasNext()) {
Element book=iter.next();
Element name= book.element("name");
Element price= book.element("price");
System.out.println("name:" + name.getText() + ",price:" +price.getText());
Element chapters= book.element("chapters");if (null !=chapters) {
Iterator chaptersIter =chapters.elementIterator();if (null !=chaptersIter) {while(chaptersIter.hasNext()) {
Element c=chaptersIter.next();
System.out.println("===>" +c.getText());
}
}
}
}
}public static void test2() throwsDocumentException {
String str= "<?xml version=\"1.0\" encoding=\"UTF-8\"?>"
+ ""
+ " "
+ " Think in Java"
+ " 120.0"
+ " "
+ " "
+ " Think in Java2"
+ " 220.0"
+ " "
+ "";
Document doc=DocumentHelper.parseText(str);
Element books=doc.getRootElement();
List childEles =books.elements();
Iterator iter =childEles.iterator();while(iter.hasNext()) {
Element book=iter.next();
Element name= book.element("name");
Element price= book.element("price");
System.out.println("name:" + name.getText() + ",price:" +price.getText());
}
}public static void test1() throwsDocumentException {
String str= "<?xml version=\"1.0\" encoding=\"UTF-8\"?>"
+ ""
+ " "
+ " nsrsbh"
+ " retStatus"
+ " img_name"
+ " img_byteString"
+ " "
+ "";
Document doc=DocumentHelper.parseText(str);//获取到父节点
Element dzswdjz =doc.getRootElement();//定位到qr_code节点
Element qr_code = dzswdjz.element("qr_code");
Element nsrsbh= qr_code.element("nsrsbh");
Element retStatus= qr_code.element("retStatus");
Element img_name= qr_code.element("img_name");
Element img_byteString= qr_code.element("img_byteString");
System.out.println("nsrsbh:" +nsrsbh.getText());
System.out.println("retStatus:" +retStatus.getText());
System.out.println("img_name:" +img_name.getText());
System.out.println("img_byteString:" +img_byteString.getText());
}
}