java parseexception_Java ParseException类代码示例

import com.sun.org.apache.xerces.internal.impl.xpath.regex.ParseException; //导入依赖的package包/类

@Override

public void read(File file) throws IOException {

try {

Document doc = db.parse(file);

NodeList nlTimeSlots = (NodeList) xp.evaluate(

"/ANNOTATION_DOCUMENT/TIME_ORDER/TIME_SLOT", doc,

XPathConstants.NODESET);

HashMap timeSlots = new HashMap();

for (int i = 0; i < nlTimeSlots.getLength(); i++) {

Element timeSlot = (Element) nlTimeSlots.item(i);

String id = timeSlot.getAttribute("TIME_SLOT_ID");

int time = Integer

.parseInt(timeSlot.getAttribute("TIME_VALUE"));

timeSlots.put(id, time / 1000.0);

}

String txt;

NodeList nlSegments = (NodeList) xp

.evaluate(

"/ANNOTATION_DOCUMENT/TIER/ANNOTATION/ALIGNABLE_ANNOTATION",

doc, XPathConstants.NODESET);

double segment_start, segment_end;

String segment_text;

for (int i = 0; i < nlSegments.getLength(); i++) {

Element elSegment = (Element) nlSegments.item(i);

txt = elSegment.getAttribute("TIME_SLOT_REF1");

if (!timeSlots.containsKey(txt))

throw new RuntimeException("Missing time slot: " + txt);

segment_start = timeSlots.get(txt);

txt = elSegment.getAttribute("TIME_SLOT_REF2");

if (!timeSlots.containsKey(txt))

throw new RuntimeException("Missing time slot: " + txt);

segment_end = timeSlots.get(txt);

segment_text = (String) xp.evaluate("ANNOTATION_VALUE",

elSegment, XPathConstants.STRING);

segment_text = segment_text.toLowerCase()

.replaceAll("[\\p{Punct}]+", " ")

.replaceAll("\\s+", " ").trim();

addSegment(0, segment_start, segment_end, segment_text);

}

} catch (ParseException | SAXException | XPathExpressionException e) {

throw new IOException(e);

}

}

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值