从XML Schema数据类型转换为Java int

时间:2012-04-10 18:11:22

标签: java sparql jena dbpedia

我正在开发一个涉及从Dbpedia获取数据的项目,我想知道是否还有将dbpedia查询返回的对象(即XMLSchema#double)转换为java int,以便我可以对其执行操作并修改我使用的数据。我正在使用jena从jena提供的sparql端点获取数据。我尝试使用toString方法将RDFnode更改为字符串而不是转换为int / double,但这似乎不起作用并给出了下面列出的异常:

Exception in thread "main" java.lang.NumberFormatException: For input string: "147181000000^^http://www.w3.org/2001/XMLSchema#double"
    at java.lang.NumberFormatException.forInputString(NumberFormatException.java:48)

这里有没有人解决这个问题?

1 个答案:

答案 0 :(得分:1)

转换为String后,它看起来像: “1471.81亿^^ HTTP://www.w3.org/2001/XMLSchema#double”

并且您想要转换为int / double,因为您必须仅将第一个数字与此字符串分开 数字= 147181000000。 您可以使用indexOf或split方法从String中获取Number。

示例代码:

 String number = "147181000000^^http://www.w3.org/2001/XMLSchema#double";
    number = number.subString(0,nuber.indexOf(^));
    int num = Integer.ParseInt(number);