0

我正在做一个耶拿开发。

当我读取本地文件时,即使它只有三行,我也无法正常运行。

这是我的代码:

OntModel model = ModelFactory.createOntologyModel(OntModelSpec.OWL_MEM);
model.read(owlPath, null);
Iterator<OntClass> it = model.listClasses();

while (it.hasNext()) {
    OntClass ontclass = it.next();
    System.out.println(ontclass.getLabel(null));
}

owlpath值类似于file:\\animals-rdf.owl, 或file:\\D:\\Eclipse\\workspace\\jena_demo\\sources\\amimal-rdf.owl, 或没有file:\\前缀,即使我使用了 namespace example.com# + filepath,它仍然可以通过。

具体的错误报告是:

Exception in thread "main" com.hp.hpl.jena.shared.WrappedIOException:    
java.io.FileNotFoundException: \animals-rdf.owl

有人可以帮忙吗?我完全困惑为什么它不能工作。

4

1 回答 1

4

您的文件 URI 已损坏。尝试:

file:///D:/Eclipse/workspace/jena_demo/sources/animal-rdf.owl

AIUI 这就是它在 Windows 上的工作方式。您还可以使用文件输入流,这样就无需构造文件 URI:

InputStream in = new FileInputStream("animal-rdf.owl"); // or any windows path
model.read(in, null);
in.close();
于 2013-04-03T09:50:39.740 回答