2017-09-04 90 views
-1

我正在使用Android中的OWL API 3.4.10。 我试图存储一个使用其URL打开的本体的本地副本。OWL API存储通过url打开的本体的本地副本

通过URL打开本体之后,我试着将它用这种方法节省:

public void saveLocalCopy(OWLOntology o, String filename, String path) throws OWLOntologyStorageException,OWLOntologyCreationException, IOException { 
    String extension = ".owl"; 
    File file = new File(path+filename+extension); 

    file.createNewFile(); 
    manager.saveOntology(o, IRI.create(file)); 
    file.delete(); 
} 

当我尝试从指定的路径打开它,我得到这个异常:

com.example.user.myproject W/System.err: org.semanticweb.owlapi.io.OWLOntologyInputSourceException: java.io.FileNotFoundException: /storage/emulated/0/ontology.owl (No such file or directory) 

我怎么能管理这个? P.S:清单中的读/写权限设置:提前

<uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE" /> 
<uses-permission android:name="android.permission.READ_INTERNAL_STORAGE" /> 
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" /> 
<uses-permission android:name="android.permission.WRITE_INTERNAL_STORAGE" /> 

感谢。

+0

file.delete(); => FileNotFoundException尝试打开它时。 – Galigator

回答

0

您在包含您刚刚保存的本体的文件上调用file.delete()。这不可能是你想成为的。