微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

android – 访问手机内部存储以推入SQLite数据库文件

我正在使用Netbeans和java开发我的android应用程序.当我使用模拟器时,我可以通过访问以下路径,data / data / com.example.helloandroid / database来访问File explorer并将sqlite数据库插入设备内部存储器

但是当我使用真实设备时,我无法访问此位置以将sqlite文件推送到手机的内部存储(位置).

有人可以帮我如何将文件添加到手机内部存储.谢谢

解决方法:

我认为该设备没有root权限,这就是你无法访问它的原因.如果你想通过编程方式在你的应用程序中进行,那么它是可能的.如果有人知道的话请分享一下.

编辑:好的,首先,

1. copy your Database.db file in your projects assets folder.
2. Now using code copy database file from /asset to device's internal storage 
   (data/data/<package name>/database folder).

对于代码下使用的复制文件,

try {
     // Open your local db as the input stream
     InputStream myInput = myContext.getAssets().open("your database file name");

     // Path to the just created empty db
     String outFileName = "/data/data/<your_app_package_name>/databases/<database_file_name>";

     OutputStream myOutput = new FileOutputStream(outFileName);

     // transfer bytes from the inputfile to the outputfile
     byte[] buffer = new byte[1024];
     int length;
     while ((length = myInput.read(buffer)) > 0) 
         {
       myOutput.write(buffer, 0, length);
     }

    // Close the streams
    myOutput.flush();
    myOutput.close();
    myInput.close();
} 
catch (Exception e) 
{
     Log.e("error", e.toString());
}

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐