Java 在android中加载owl文件
我知道这个问题之前有人问过,但现在任何地方都没有合适的解决方案,所以我要再问一次。 如何在android项目中加载owl文件 代码在java中工作,但在android中没有用处。当我在android项目中尝试它们时,该文件无法访问。我使用的是OWLApi 3.4.10。 我正在从mainActivity类加载本体。加载在OntologyClass类中的loadOntology方法中执行。 在主要方法中,编码如下所示Java 在android中加载owl文件,java,android,semantic-web,owl,owl-api,Java,Android,Semantic Web,Owl,Owl Api,我知道这个问题之前有人问过,但现在任何地方都没有合适的解决方案,所以我要再问一次。 如何在android项目中加载owl文件 代码在java中工作,但在android中没有用处。当我在android项目中尝试它们时,该文件无法访问。我使用的是OWLApi 3.4.10。 我正在从mainActivity类加载本体。加载在OntologyClass类中的loadOntology方法中执行。 在主要方法中,编码如下所示 @Override protected void onCreate(Bundle
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
ontologyClass ontology;
ontology = new ontologyClass();
try {
ontology.ontologyLoad();
} catch (Exception e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
本体类的编码如下:
@Ignore
@SuppressWarnings("javadoc")
public class ontologyClass {
OWLOntology pizza;
OWLOntologyManager manager;
public ontologyClass ontologyLoad() throws OWLOntologyCreationException {
manager= OWLManager.createOWLOntologyManager();
File file= new File("assets/Pizza.owl");
pizza = manager.loadOntologyFromOntologyDocument(file);
return this;
}
pizza.owl文件位于assets文件夹中。
在logcat中,我收到如下警告
FileNotFountException:/assets/Pizza.owl:打开失败:没有这样的文件或目录
有人能解决这个文件加载问题吗
感谢处理生成路径错误:
通常,如果您在java中使用OWLAPI,那么您所需要的只是导入OWLAPI库。但在安卓系统中,若你们只这样做,你们仍然会得到一个错误,说明找不到方法。因此,您需要执行第二步,即右键单击您的android项目,然后
属性->Java构建路径->订单和导出选项卡
在这里选中owlapi3.4.10.jar
资产文件夹中文件路径的答案如下:
asserts文件夹中WL文件的目录/路径可以通过InputStream类访问。file类不适用于此文件夹,因此,不要使用
File File=newfileassets/Pizza.owl
使用此代码
InputStream is= myContext.getAssets().open("Pizza.owl");
最后使用的InputStream实例是,这表示资产文件夹ie中文件的正确路径
pizza = manager.loadOntologyFromOntologyDocument(is);
我知道这个问题之前有人问过,但现在任何地方都没有合适的解决方案,所以我要再问一次。在这种情况下,正确的做法是对现有问题给予奖励,用更多信息更新它,等等。我确信OWL API可以用于Android应用程序,因为我和其他人已经使用它来加载本体。不过,我想不起来这是否适用于3.4.10版。一旦我有时间重新创建,我会详细回答。@JoshuaTaylor对不起,如果我知道我可能会这么做的话。谢谢你information@Ignazio你在哪个安卓版本上测试过这个?是的,如果你能管理好时间并用一些细节来回答这个问题,这将是非常有帮助的。我在4.1.2上运行了这个问题。目前的问题形式只适用于那些想办法打开属于apk资产一部分的文件的人。您可以添加以前生成错误的详细信息以及如何修复它吗?这些可能与另一个用户在使用OWL API时遇到问题有关。@Ignazio抱歉,我没有得到术语“上一个生成错误”。您说过,在生成路径中有一个错误,当时您有“方法未找到错误”。