package com.poson.cb.util;
import java.io.File;
import java.io.UnsupportedEncodingException;
import java.util.List;
import org.jdom.Document;
import org.jdom.Element;
import org.jdom.input.SAXBuilder;
import com.poson.cb.dao.impl.sidmngr.XmlConfig;
/**
* Title: XmlParse
* Description: 用来解析配置了SQL脚本的XMl文件,如fileClassCount.xml
* Copyright: Copyright (c) 2007
* Company: POSON
* @author jczhangb
* @version 1.0
*/
public class XmlParse {
public static String File_Path;
public Document document;
private XmlParse() throws Exception{
SAXBuilder saBuilder=new SAXBuilder();
document=saBuilder.build(File_Path);
}
public static XmlParse getInstance() throws Exception{
File_Path=getCurrentPath()+File.separator+"fileClassCountSql.xml";
return new XmlParse();
}
public static XmlParse getInstance(String filePath) throws Exception{
File_Path=filePath;
return new XmlParse();
}
/**
* @parmer: id
* @return :返回对应的SQL脚本
* @author jczhangb
* @version 1.0
*/
public String getTextContentById(String attrName) throws Exception{
/*SAXBuilder saBuilder=new SAXBuilder();
org.jdom.Document document=saBuilder.build(getCurrentPath()+File.separator+fileName);*/
String sqlString="";
Element root=document.getRootElement();
List list=root.getChildren();
for (int i = 0; i < list.size(); i++) {
Element element=(Element)list.get(i);
if(element.getAttributeValue("id").equals(attrName)){
sqlString=element.getValue();
return sqlString;
}
}
return sqlString;
}
// 用来定位路径
static public String getCurrentPath() throws UnsupportedEncodingException {
String path = XmlConfig.class.getProtectionDomain().getCodeSource()
.getLocation().getFile();
path = java.net.URLDecoder.decode(path, "UTF-8");
int index = path.lastIndexOf("/classes");
path = path.substring(0, index);
System.out.println("CB xml path = [ " + path + " ]");
return path;
}
public static void main(String[] args) {
try {
System.out.println(XmlParse.getInstance().getTextContentById("ivpnTruncateSql"));
} catch (Exception e) {
System.out.println("没找到");
}
}
}
2013-08-01 19:40 记 @jinrongdajie31.xichengqu.beijing
分享到:
相关推荐
XML解析工具类,通用解析,简化XML解析难度,提高XML解析效率
用于xml解析的通用方法,非常实用,只要传相应的参数就可以解析。
java通用解析XML工具类
NULL 博文链接:https://ladybird2010.iteye.com/blog/675217
解析xml文件的通用类,使用libxml实现边下载边解析,下载使用ASI开源库. 可以设置最外边需要解析的tag
xml,公共解析,万能方法,通用方法,循环解析xml下的每一个节点
本人没分了,特别来分享一下,通用的XML读写工具类,同志们下下绝对不后悔
通过Linq快速解析Xml数据,方便快速的获取到想到的数据。
大家使用uiautomator dump 来获取界面元素xml后。基本都是用取文本中间或正则来分析的。这样不但效率低下,对一些特征不明显的xml元素很难取到。如果直接用xml来匹配就不存在这个问题了。并且可以基于本框架进行快速...
突破jdk与wsdl第三方对xml文本解析领域割据趋势,该脚本既可以支持普通xml解析,也支持soap-xml第三方xml文本的解析; 极大的节省了引入冗余jar资源; 纯底层算法解析,不依赖任何第三方工具包,自主产权维护性强。
突破jdk与wsdl第三方对xml文本解析领域割据趋势,该脚本既可以支持普通xml解析,也支持soap-xml第三方xml文本的解析; 极大的节省了引入冗余jar资源; 纯底层算法解析,不依赖任何第三方工具包,自主产权维护性强。
这是一个通用的xml解析项目,数据的效率很大的提高.
通用xml解析类实现,封装了开源的xml解析,使用起来更加方便灵活,
安卓Android源码——比较通用的xml解析方法.rar
通用性强,它会将XML文件的所有内容读取到内存中,然后使用DOM API遍历XML树、检索所需的数据; 优点:简单直观,但需要将文档读取到内存, 缺点:并不太适合移动设备; 2,SAX SAX是一个解析速度快并且占用内存少的...
本人实现的基于Pull解析器的XML解析生成工具类,将XML文件转换成对象,将对象转换成XML文件并保存,全部通用,不需要与任何对象进行关联
javascript封装的通用解析和操作xml文件数据工具类(含测试使用代码) javascript封装的通用解析和操作xml文件数据工具类(含测试使用代码) 测试数据: <?xml version="1.0" encoding="UTF-8"?> <root> <book> ...
比较通用的xml解析方法.rar,太多无法一一验证是否可用,程序如果跑不起来需要自调,部分代码功能进行参考学习。
比较通用的xml解析方法
C#通用类数据库连接、日志、http类、json解析、xml、RTX