将Map和List<Map>zhuan转换成xml字符串

/**
	 * 把List result<HASHMAP>里面数据封装成报表数据 针对resultMap = hashMap
	 * 
	 * @param result
	 *            : 行
	 * @param map
	 *            : 参数
	 */
	public static String getGridXmlMap(List result, Map map) {


		StringBuffer sb = new StringBuffer();
		sb.append("<?xml version=\"1.0\" encoding=\"gb2312\"?>");
		sb.append("<report>\n");
		sb.append("<xml>\n");
		for (int i = 0; i < result.size(); i++) {
			sb.append("<row>\n");
			Map hashMap = (HashMap) result.get(i);
			sb.append(getGridStrByMap(hashMap));
			sb.append("</row>\n");
		}
		sb.append("</xml>\n");
		sb.append("<_grparam>\n");
		sb.append(getGridStrByMap(map));
		sb.append("</_grparam>\n");
		sb.append("</report>");


		return sb.toString();
	}


	/**
	 * 把HASHMAP里面数据封装成XML
	 */
	public static String getGridStrByMap(Map hashMap) {
		
		String returnStr = null;
		if (hashMap.isEmpty()) {
			returnStr =  "";
		}else{
			StringBuffer strBuffer = new StringBuffer();
			Iterator iterator = hashMap.keySet().iterator();
			while (iterator.hasNext()) {
				String key = (String) iterator.next();
				Object value = hashMap.get(key);
					hashMap.put(key, (value == null ? "" : value));
					strBuffer.append("<" + key + "><![CDATA["
							+ (value == null ? "" : value) + "]]></" + key + ">\n");
			}
			returnStr = strBuffer.toString();
		}
		return returnStr;
	}
	


猜你喜欢

转载自blog.csdn.net/a314774167/article/details/79477942