[英]write result of SPARQL to file in java
我在 java 中使用 fuseki 服务器作为嵌入式服务器,并通过以下代码获得 SPARQL 结果:
public static void execSelectAndPrint(FileWriter fw, String serviceURI, String query) throws IOException {
QueryExecution q = QueryExecutionFactory.sparqlService(serviceURI,query);
ResultSet results = q.execSelect();
ResultSetFormatter.outputAsCSV(System.out, results);
while (results.hasNext()) {
QuerySolution soln = results.nextSolution();
RDFNode x = soln.get("x");
System.out.println(x);
fw.append(x.toString());
}
fw.close();
}
它将结果正确打印到控制台,但它可以写入文件。 我想将 SPARQL 查询的结果写入 csv 文件。
Java Writer
可能会产生字符翻译问题,这就是 API 更喜欢OutputStream
的原因,因此使用FileOutputStream
将起作用。
否则,output 使用ByteArrayOutputStream
转换为字节,转换为字符串并写入字符串。
但要小心字符集。 大多数与 SPARQL 相关的格式是 UTF-8,而不是平台本机字符集。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.