1

我正在从事一个涉及从 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)

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

4

1 回答 1

1

转换为字符串后,它看起来像:“147181000000^^http://www.w3.org/2001/XMLSchema#double”

并且您想转换为 int/double ,因为您必须将此字符串中的第一个数字 Number= 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);
于 2012-08-26T16:04:26.827 回答