项目上做国内和国际的 项目地址:
世界国家和城市数据,
通过 QQ 的
写个java 方法,转成
public class XMLUtilsTest {
public static void node(NodeList list) {
for (int i = 0; i < list.getLength(); i++) {
Node node = list.item(i);
NodeList childNodes = node.getChildNodes();
NodeList childNodes1;
NodeList childNodes2;
String name;
String code;
for (int j = 0; j < childNodes.getLength(); j++) {
if (childNodes.item(j).getNodeType() == Node.ELEMENT_NODE) {
name = childNodes.item(j).getAttributes().getNamedItem("Name").getNodeValue();
code = childNodes.item(j).getAttributes().getNamedItem("Code").getNodeValue();
System.out.println("{\"code\": \"" + name + "\", \"name\": \"" + code + "\"},");
childNodes1 = childNodes.item(j).getChildNodes();
for (int k = 0; k < childNodes1.getLength(); k++) {
if (childNodes1.item(k).getNodeType() == Node.ELEMENT_NODE) {
if (childNodes1.item(k).getAttributes().getNamedItem("Name") == null) {
childNodes2 = childNodes1.item(k).getChildNodes();
for (int l = 0; l < childNodes2.getLength(); l++) {
if (childNodes2.item(l).getNodeType() == Node.ELEMENT_NODE) {
name = childNodes2.item(l).getAttributes().getNamedItem("Name").getNodeValue();
code = childNodes2.item(l).getAttributes().getNamedItem("Code").getNodeValue();
System.out.println("{\"code\": \"" + name + "\", \"name\": \"" + code + "\"},");
}
}
} else {
name = childNodes1.item(k).getAttributes().getNamedItem("Name").getNodeValue();
code = childNodes1.item(k).getAttributes().getNamedItem("Code").getNodeValue();
System.out.println("{\"code\": \"" + name + "\", \"name\": \"" + code + "\"},");
}
}
}
}
}
}
}
public static void main(String[] args) {
//1.创建DocumentBuilderFactory对象
DocumentBuilderFactory factory = DocumentBuilderFactory.newInstance();
//2.创建DocumentBuilder对象
try {
DocumentBuilder builder = factory.newDocumentBuilder();
Document d = builder.parse("src/main/resources/locList.xml");
NodeList sList = d.getElementsByTagName("Location");
//element(sList);
node(sList);
} catch (Exception e) {
e.printStackTrace();
}
}
}
直接copy 出来 ,加个帽子
就有了,之前本想找一个,哪知道 优快云 全部都是收费,心累,开源共享!