File 在检查blackberry中是否存在.db文件后,是否在SD卡中创建该文件?

File 在检查blackberry中是否存在.db文件后,是否在SD卡中创建该文件?,file,blackberry,sd-card,delete-file,File,Blackberry,Sd Card,Delete File,我正在我的应用程序中创建一个db文件。现在我只想在应用程序安装时创建一次.db文件。 当我打开应用程序时,它只是检查文件是否存在 我们如何在SD卡中检查.db文件,以及在安装之前是否存在该文件,而不是删除该文件。您可以使用以下代码检查该文件是否存在 FileConnection fileConnection = (FileConnection)Connector.open("file:///SDCard/foldername/" + "databasename.db"); boole

我正在我的应用程序中创建一个db文件。现在我只想在应用程序安装时创建一次.db文件。 当我打开应用程序时,它只是检查文件是否存在


我们如何在SD卡中检查.db文件,以及在安装之前是否存在该文件,而不是删除该文件。

您可以使用以下代码检查该文件是否存在

 FileConnection fileConnection = (FileConnection)Connector.open("file:///SDCard/foldername/" + "databasename.db");

    boolean result=fileConnection.exists(); 

  if(result)
  {
     //database available
  }else{
       //database not available
  }
下一步,当应用程序第一次安装时,使用

 CodeModuleListener listner=new CodeModuleListener() {

            public void modulesDeleted(String[] moduleNames) {
                // TODO Auto-generated method stub

            }

            public void modulesAdded(int[] handles) {
                // TODO Auto-generated method stub
                //here you can check if database available or not if available then delete 
                try{
                    URI myURI = URI.create("file:///SDCard/foldername/" + "database_name.db"); 
                    DatabaseFactory.delete(myURI);  
                }catch (Exception e) {
                    // TODO: handle exception
                }

            }

            public void moduleDeletionsPending(String[] moduleNames) {
                // TODO Auto-generated method stub

            }
        };
        CodeModuleManager.addListener(this.getApplication(), listner);

您是否检查了RIM提供的示例应用程序,
SQLiteDemo
,以及黑莓的Eclipse插件JRE 6.0?在该应用程序的第126行,它检查文件是否存在,是否为空。如果文件存在且为空,则会创建一个新的数据库文件。您需要处理这一部分,以确定数据库文件是否由当前版本的应用程序创建,或由其他应用程序/旧版本的应用程序创建。为此,您可以使用BlackBerry API的持久数据存储实用程序。创建新的数据库文件时,还可以存储一些信息,这些信息可在以后用于确定创建数据库文件的应用程序的当前版本。如果发现由其他人创建的数据库文件,则只需使用
FileConnection.delete()
删除该文件。执行此操作但不起作用,ModuleAdded或moduleDeleted或ModuleDeleteOnSunding方法未命中断点:(