java - 将 System.out 返回到字符串

标签 java sparql jena owl protege

我在使用 protege 3.x 创建的 OWL“ressu.owl”文件上查询 Sparql。我有义务指出将结果集转换为可用的内容,例如 JTextArea,因为我使用 ResultSetFormatter()

我是这样使用的

ResultSetFormatter.out(System.out, results, query) ;

它在 Netbeans 控制台中给出了这个结果:

enter image description here

但是当我尝试将 System.out 返回到 String::

com.hp.hpl.jena.query.ResultSet results = qe.execSelect();
ResultSetFormatter.out(System.out, results, query) ;
ByteArrayOutputStream go = new ByteArrayOutputStream ();
ResultSetFormatter.out((OutputStream)go ,results, query);
String result = go.toString();
jTextArea1.setText(result);

它仅在 JtextArea 中显示

---------------------------------------------------------------
| hasnamefonctioncontrainte        | hasnamefonctionprincipale 
===============================================================

帮助 非常感谢

最佳答案

result 是一个迭代器。

您在

打印它
ResultSetFormatter.out(System.out, results, query) ;

现在你已经到了迭代器和第二次调用的末尾:

ResultSetFormatter.out((OutputStream)go ,results, query);

从该点(末尾)迭代,因此没有行。

尝试 ResultSetFactory.copyResults 获取可以倒回的结果集(或者只是不打印出来)。

关于java - 将 System.out 返回到字符串,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15313009/

相关文章:

sparql - 如何使用 Python 确定两个 SPARQL 查询是否相同?

java - SPARQL 查询从特定 RDF 图中不返回任何内容

java - 使用 OWL Anonymous Annotated Target 读取注释

java - 使用 jpa 在对象中保留对象

java - 无法使用 SMTP 在 java 中发送电子邮件,它被我办公室的防火墙阻止了。我们可以通过其他方法发送邮件吗?

java - 抽象类和枚举

sparql - 对同一属性的 SPARQL 结果进行分组?

jena - OWL API、Jena API、Protege API,用哪一个

java - Jena 模型将我的 RDF 类型显式声明转换为隐式声明并弄乱了格式

java - JVM 垃圾收集和分页内存架构