参照一位大佬贡献的代码修改的(扩展了对象解析,修改了一些bug,比如流异常未关闭)
封装好了,三行代码解析为对象
github: https://github.com/tanhuang2016/elanguage
一.模拟的E文件
<StandbyDbInfo>
@ 设备ID 厂站名 量测名 时间 有功值
# 11681223431138934 八嘎桥站 哈南.是咯站/500kV.高铁二线/无功值 2019-11-5 11:25 -1382333.435
# 11681223431138933 八嘎桥站 哈南.是咯站/500kV.高铁一线/无功值 2019-11-5 11:25 -1402334.138
# 11681223431118497 八嘎县站 哈南.是咯站/500kV.高铁一线/无功值 2019-11-5 11:25 -86.233354
# 11681223431118498 八嘎县站 哈南.是咯站/500kV.高铁二线/无功值 2019-11-5 11:25 -86.233468
# 11681223431140460 八嘎梁站 哈南.是咯站/500kV.高铁Ⅰ线/无功功率 2019-11-5 11:25 -1023339.196
# 11681223431140462 八嘎梁站 哈南.是咯站/500kV.高铁Ⅱ线/无功功率 2019-11-5 11:25 -1023333.107
</StandbyDbInfo>
<Qwfh>
@ 设备ID 厂站名 量测名 时间 有功值
# 1168156600718497 ss县站 ss.s县站/500kV.ss一线/有功值 2019-11-28 11:00 32263.578
</Qwfh>
二.实体类代码
package com;
import com.annotation.EColumn;
//@ETable("StandbyDbInfo")
public class StandbyDbInfo {
@EColumn("设备ID")
private String devId;
@EColumn("厂站名")
private String dcdName;
@EColumn("量测名")
private String measureName;
@EColumn("时间")
private String date;
@EColumn("有功值")
private String activeValue;
public String getMeasureName() {
return measureName;
}
public void setMeasureName(String measureName) {
this.measureName = measureName;
}
public String getDevId() {
return devId;
}
public void setDevId(String devId) {
this.devId = devId;
}
public String getDcdName() {
return dcdName;
}
public void setDcdName(String dcdName) {
this.dcdName = dcdName;
}
public String getDate() {
return date;
}
public void setDate(String date) {
this.date = date;
}
public String getActiveValue() {
return activeValue;
}
public void setActiveValue(String activeValue) {
this.activeValue = activeValue;
}
}
三.执行效果
不用留邮箱了,放到了github上
GitHub - tanhuang2016/elanguage: E文件解析
如果有帮到你,帮点个star吧,谢谢哦