具體見**
呼叫方法:
第一種map轉xml:createxmlbymap(mapmap,string parentname);
第二種map轉xml:movemaptoxml(map<?, ?> map);
第一種xml轉map: createmapbyxml(string xml);
/**
* 將map轉換為xml,map可以多層轉
* @param params 需要轉換的map。
* @param parentname 就是map的根key,如果map沒有根key,就輸入轉換後的xml根節點。
* @return string-->xml
*/@suppresswarnings("unchecked")
public static string createxmlbymap(mapmap,
string parentname)
document doc = documenthelper.createdocument();
//設定根節點
doc.addelement(parentname);
string xml = iteratorxml(doc.getrootelement(), parentname, rootmap);
return formatxml(xml);
}/**
* 迴圈遍歷params建立xml節點
* @param element 根節點
* @param parentname 子節點名字
* @param params map資料
* @return string-->xml
*/@suppresswarnings("unchecked")
public static string iteratorxml(element element, string parentname,
mapparams) else if (params.get(key) instanceof list)
} else
}return e.asxml();
}/**
* 格式化xml
* @param xml
* @return
*/public static string formatxml(string xml)
return requestxml;
} catch (exception e1) finally catch (ioexception e) }}
}/**
* 第二種
* 手動組裝map轉為string
* @param map
* @return
*/public static string movemaptoxml(map<?, ?> map)
/** *
* @param map 迴圈遍歷map節點和value
* @param sb 輸出xml
*/private static void maptoxml(map<?, ?> map, stringbuffer sb) else if (value instanceof arraylist)
} else
}}/**
* 通過xml轉換為map* @param xml 為string型別的xml
* @return 第乙個為root節點,root節點之後為root的元素,如果為多層,可以通過key獲取下一層map
*/public static mapcreatemapbyxml(string xml) catch (documentexception e)
mapmap = new hashmap();
if (doc == null)
return map;
element rootelement = doc.getrootelement();
elementtomap(rootelement, map);
return map;
}/***
* xmltomap核心方法,裡面有遞迴呼叫
* @param map
* @param ele
*/@suppresswarnings("unchecked")
public static mapelementtomap(element outele,
mapoutmap) else else else }}
outmap.put(outele.getname(), innermap);
}return outmap;
}
遞迴法遍歷xml文件所有節點。
能遍歷出乙個xml文件的所有的節點。module module1 sub main dim ireturn as integer dim myxmldocument as new xmldocument myxmldocument.load books.xml dim mynodes as xmln...
遞迴及如何用c 遞迴生成多層次XML檔案
遞迴做為一種演算法在程式語言中廣泛應用.是指函式 過程 子程式在執行過程中直接或間接呼叫自身而產生的重入現象.遞迴是電腦科學的乙個重要概念,遞迴的方法是程式設計中有效的方法,採用遞迴編寫程式能使程式變得簡潔和清晰.一般定義 程式呼叫自身的程式設計技巧稱為遞迴 recursion 乙個過程或函式在其定...
遞迴及如何用c 遞迴生成多層次XML檔案
遞迴做為一種演算法在程式語言中廣泛應用.是指函式 過程 子程式在執行過程中直接或間接呼叫自身而產生的重入現象.遞迴是電腦科學的乙個重要概念,遞迴的方法是程式設計中有效的方法,採用遞迴編寫程式能使程式變得簡潔和清晰.一般定義 程式呼叫自身的程式設計技巧稱為遞迴 recursion 乙個過程或函式在其定...