xml解析工具类
来源:互联网 发布:现金赌博软件手机软件 编辑:程序博客网 时间:2024/05/17 16:55
/**
* 类 名: XmlUtils
* 描 述: xml解析工具类 xml解析需要一个jar包xstream-1.4.7
*/
public class XmlUtils {
private final static String TAG = XmlUtils.class.getSimpleName();
//将一个xml流转换为bean实体类
@SuppressWarnings(“unchecked”)
public static T toBean(Class type, InputStream is) {
XStream xmStream = new XStream(new DomDriver(“UTF-8”));
// 设置可忽略为在javabean类中定义的界面属性
xmStream.ignoreUnknownElements();
xmStream.registerConverter(new MyIntCoverter());
xmStream.registerConverter(new MyLongCoverter());
xmStream.registerConverter(new MyFloatCoverter());
xmStream.registerConverter(new MyDoubleCoverter());
xmStream.processAnnotations(type);
T obj = null;
try {
obj = (T) xmStream.fromXML(is);
} catch (Exception e) {
TLog.log(TAG, “解析xml发生异常:” + e.getMessage());
} finally {
if (null != is) {
try {
is.close();
} catch (IOException e) {
TLog.log(TAG, “关闭流出现异常:” + e.getMessage());
}
}
}
return obj;
}
public static <T> T toBean(Class<T> type, byte[] bytes) { if (bytes == null) return null; return toBean(type, new ByteArrayInputStream(bytes));}private static class MyIntCoverter extends IntConverter { @Override public Object fromString(String str) { int value; try { value = (Integer) super.fromString(str); } catch (Exception e) { value = 0; } return value; } @Override public String toString(Object obj) { return super.toString(obj); }}private static class MyLongCoverter extends LongConverter { @Override public Object fromString(String str) { long value; try { value = (Long) super.fromString(str); } catch (Exception e) { value = 0; } return value; } @Override public String toString(Object obj) { return super.toString(obj); }}private static class MyFloatCoverter extends FloatConverter { @Override public Object fromString(String str) { float value; try { value = (Float) super.fromString(str); } catch (Exception e) { value = 0; } return value; } @Override public String toString(Object obj) { return super.toString(obj); }}private static class MyDoubleCoverter extends DoubleConverter { @Override public Object fromString(String str) { double value; try { value = (Double) super.fromString(str); } catch (Exception e) { value = 0; } return value; } @Override public String toString(Object obj) { return super.toString(obj); }}
}
- XML 解析工具类
- xml解析工具类
- XML解析工具类
- xml解析工具类
- XML解析工具类
- XML解析工具类
- xml解析工具类
- XML解析工具类
- xml解析工具类
- 解析xml工具类
- 解析xml的工具类
- dom4j-----解析xml工具类
- XStream工具类解析XML
- xml解析的工具类
- XML文件解析工具类pull解析
- 文件(XML)解析处理工具类
- dom4j解析xml(含工具类)
- 安卓快速解析xml工具类
- 1.UNIX 环境高级编程--UNIX基础知识
- 17 分配器Allocator和容器间的关系(学自Boolean)
- 李笑来《财富自由之路》读书笔记(Ⅰ)
- 欢迎使用CSDN-markdown编辑器
- iptables防火墙的设置
- xml解析工具类
- 转 设计模式
- 【百度AI人脸核身+公安验证】IOS示例工程运行
- ios 应用打开 图片 文档
- 剑30-最小的K个数
- es6 javascript中的class理解
- Fragment显示问题
- Xshell实现Windows上传文件到Linux主机
- C++异常处理