我正在开发一个涉及从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)
这里有没有人解决这个问题?
答案 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);