0

我一直在尝试加载我在 Protégé 中制作的 OWL 文件。我将 OWL API 3.4.3 导入我的项目并将sample.owl文件传递到原始文件夹,但是当我尝试加载 OWL 文件时,它不起作用。没有错误,但我只是收到此消息

不幸的是,sampleproject 已停止

这是正在使用的代码部分。当我在标准 Java 环境中尝试代码时,它可以正常工作。

OWLOntology localOntology = null;
int rID = resources.getIdentifier("com.example.cammclient1:raw/"+"sample", null, null);
InputStream input = resources.openRawResource(rID);
OWLOntologyManager manager = OWLManager.createOWLOntologyManager();
ontology = manager.loadOntologyFromOntologyDocument(input);

try {
  for (OWLClass cls : localOntology.getClassesInSignature()) {
    Log.d("class in the ontology", ((CharSequence) cls).toString());
  }
  TV1.setText("reading classes...............");
} 
catch (Exception e) {
  TV1.setText("Not successfull");
}
4

1 回答 1

0

您正在将OWLClass实例转换为CharSequence然后调用toString()它。这将导致ClassCastException被抛出 - OWLClass 不是字符串。只需使用它cls.toString(),您将获得相同的结果。

您还吞下了 catch 块中的异常。这对诊断问题没有帮助,因为它只是通过说“不成功”而不提供更多信息来隐藏信息。

于 2014-02-12T07:34:14.627 回答