用map生成特殊格式的xml

在CIS项目中,需要生成特殊格式的xml, 涉及到一点小的算法
<?xml version="1.0" encoding="UTF-8" ?>
<attributeValueMapping>
	<enumMapping name="adminstates_enum">
		<enumeration key="0" value="Managed" />
		<enumeration key="1" value="Unmanaged" />
		<enumeration key="2" value="Unknown" />
		<enumeration key="3" value="Testing" />
		<enumeration key="4" value="Restricted" />
		<enumeration key="5" value="Disabled" />
	</enumMapping>
</attributeValueMapping>

	public Map<String, List<String>> doParseForEnum2() {
		init(FILE_NAME_SPECIFICATION,SHEET_SPECIFICATION);
		int attributeColumn = 0;
		int keyColumn = 1;
		int valueColumn = 2;
		int typeColumn = 3;
		
		Map<String,List<String>> map = new HashMap<String,List<String>>();
		
		for(int i = 3; i< SPECIFICATION_LENGTH ; i++){
			String attribute = getValue(i, attributeColumn);
			String key = getValue(i, keyColumn);
			String value = getValue(i, valueColumn);
			String type = getValue(i, typeColumn);
			
			if("ENUM".equals(type)){
				if(map.containsKey(attribute)){
					map.get(attribute).add(key+","+value);
				}else{
					List<String> list = new ArrayList<String>();
					list.add(key+","+value);
					map.put(attribute,list);
				}
			}
		}
		free();
		return map;
	}


读EXCEL文件, 将数据以Map<String,List<String>>的格式输出到XML。
关键点是
if(map.containsKey(attribute)){
					map.get(attribute).add(key+","+value);
				}else{
					List<String> list = new ArrayList<String>();
					list.add(key+","+value);
					map.put(attribute,list);
				}

你可能感兴趣的:(xml)