xml的复杂解析取值和节点插入导出合并后的xml文件
来源:互联网 发布:人工智能的评论 编辑:程序博客网 时间:2024/05/10 11:39
如果你正准备 对xml进行解析,而这个xml里面元素放置不规则,个个节点的值取得麻烦,然后又想 往这个xml中随心所欲的插入节点,导出完整的xml文件, 那么请 that
public static String matchtoAppXml(String cpxml_path){
try {
InputStream in = null;
// 初始化XML解析
SAXBuilder builder = new SAXBuilder();
Document requestDoc = null;
requestDoc = builder.build(cpxml_path);
Element root = (Element)requestDoc.getRootElement();
Iterator list = root.getChildren().iterator();
while(list.hasNext()) {
//1-取得外挂信息
Element node = (Element) list.next();
String s_city="";
String s_name="";
String s_add="";
String s_tel="";
//System.out.println(node.getChild("Na").getAttributeValue("v"));
if (node.getChild("Na") != null) {
s_name = node.getChild("Na").getAttributeValue("v");
}
if (node.getChild("Add") != null) {
s_add = node.getChild("Add").getAttributeValue("v");
}
//查询xml重的某个字段如
对应代码如下
if (XPath.selectSingleNode(node,"Other/case[@n='city']/@v")!= null) {
Attribute s_city_att = (Attribute)(XPath.selectSingleNode(node,"Other/case[@n='city']/@v"));
s_city = s_city_att.getValue();
}
//2-取得匹配得到的 俗名/经度纬度
Poi poi = getPoi(s_city,s_name,s_add,s_tel);
//3-插入外挂数据中
if(poi!=null){
Element pop=new Element("Pop");
//pop.setText("aaaa");
pop.setAttribute("v",poi.getName());
node.addContent(2,pop);//第二位插入
Element geo=new Element("Geo");
geo.setAttribute("lo",Integer.toString(poi.getLongitude()));
geo.setAttribute("la",Integer.toString(poi.getLatitude()));
node.addContent(3,geo);
}else{
node.removeContent();
}
}
//4-保存
XMLOutputter so=new XMLOutputter();
FileOutputStream fos = new FileOutputStream("d:/out.xml");
so.output(requestDoc,fos);
得到的out.xml的效果如下:
<Poi id="2">
<Na v="昆仑饭店" />
} catch (MalformedURLException e) {
// TODO 自动生成 catch 块
e.printStackTrace();
} catch (UnsupportedEncodingException e) {
// TODO 自动生成 catch 块
e.printStackTrace();
} catch (IOException e) {
// TODO 自动生成 catch 块
e.printStackTrace();
} catch (JDOMException e) {
// TODO 自动生成 catch 块
e.printStackTrace();
}
return "";
}
- xml的复杂解析取值和节点插入导出合并后的xml文件
- xml的复杂解析取值和节点插入导出合并后的xml文件
- 复杂节点的XML文件读取
- 使用XStream解析复杂的XML文件
- 使用XStream解析复杂的XML文件
- 使用XStream解析复杂的XML文件
- 使用XStream解析复杂的XML文件
- 用XmlReader 取xml文件节点的值
- 解析xml文件 selectSingleNode取不到节点
- JSON和XML的复杂解析
- 创建XML文件以及XML中的节点和更新Xml文件中的节点的值
- dom4j中使用xpath解析带命名空间的xml文件,取不到节点的解决办法
- boost 解析XML文件,获取子节点的属性值
- xml数据和xml文件的解析
- 【慕课笔记】2-3 应用DOM方式解析XML—使用 DOM 解析XML 文件的节点名和节点值
- 用jQuery解析复杂的xml结构文件
- 解析xml获取节点的值
- 解析XML的 循环节点
- SEO搜索引擎优化
- 数据库设计三大范式应用实例剖析
- 操作EXCEL
- 很久没有更新咯,
- 在C#.NET中如何读写INI文件 from:http://www.linuxmine.com/48287.html
- xml的复杂解析取值和节点插入导出合并后的xml文件
- C#中 将DataTable内容显示到ListView当中
- 一段莫名其妙错误的代码
- VB打包工具--- setup factory 7 使用总结
- 不是网管,如何保护自己防止ARP欺骗
- 关于C 语言的文字(作者:梦幻尤里)
- 关于C语言的入门(作者:梦幻尤里)
- Python, Lisp, Ruby函数式编程的一个小对比
- 我看《中国造》