[英]Directory was created instead of file
我想创建新文件,但是它将创建目录...我尝试了许多检查和方法..在我的应用程序的不同部分中,创建新文件的效果很好...
public void copyDatabaseFromAssets() throws IOException {
InputStream inputStream = app.getAssets().open(Static.DATABASE_FILE_NAME);
File directory = new File(getInternalDatabaseFolder());
boolean exist = directory.exists();
boolean isDirecotry = directory.isDirectory();
boolean isFile = directory.isFile();
if(!directory.exists())directory.mkdirs();
File targetFile = new File(directory.getAbsolutePath(),Static.DATABASE_FILE_NAME);
boolean exist2 = targetFile.exists();
boolean isDirecotry2 = targetFile.isDirectory();
boolean isFile2 = targetFile.isFile();
boolean created = targetFile.createNewFile();
FileTool.copyDataBaseFromAssets(inputStream,targetFile);
}
调试->
directory = /data/data/***/databases
exist = true
isDirectory = true
isFile = false
targetFile = /data/data/***/databases/database.sqlite
exist2 = true
isDirectory2 = true
isFile2 = false
created = false
错误->
java.io.FileNotFoundException: /data/data/***/databases/database.sqlite: open failed: EISDIR (Is a directory)
exist2
表示它已经存在,并且isDirectory2
表示它是一个文件夹。 尝试删除database.sqlite
并再次运行相同的代码
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.