非root下,如何将android中的数据库文件存放到外部存储并导出
来源:互联网 发布:newsql数据库有哪些 编辑:程序博客网 时间:2024/06/06 06:55
最近自学android,用的是自己的手机,Android版本太高,无法root,所以无法获取到私有目录下的数据库文件(后缀名为.db的文件),就无法查看自己创建的数据库,
上网上搜了一上午,找到了一个解决办法:就是将数据库文件保存到外部存储,然后通过adb pull phone_path pc_path :将手机端文件拉到电脑端,这样就可以查看自己创建的数据库文件
例子:
创建数据库步骤:
1.创建一个类继承SQLiteOpenHelper,需要添加一个构造方法,实现两个方法onCreate ,onUpgrade
构造方法中的参数介绍:
//context :上下文 , name:数据库文件的名称 factory:用来创建cursor对象,默认为null //version:数据库的版本号,从1开始,如果发生改变,onUpgrade方法将会调用,4.0之后只能升不能降
super(context, "info.db", null,4);//name="info.db"
2.创建这个帮助类的一个对象,调用getReadableDatabase()方法,会帮助我们创建打开一个数据库3.复写oncreate和onupgrdate方法: oncreate方法是数据库第一次创建的时候会被调用; 特别适合做表结构的初始化,需要执行sql语句;SQLiteDatabase db可以用来执行sql语句
网上了解到, 第一步构造函数中传入的name,既可以只传入文件名,
这时文件会保存在默认路径:
例如:
mContext.getDatabasePath("info.db").getPath();//name="info.db",这是默认路径
但是如果传入的name中包含路径的话,那么数据库文件会保存在所传入的路径,例如:
super(context, "/storage/emulated/0/info.db", null,4);
name=”/storage/emulated/0/info.db”,
文件保存位置为/storage/emulated/0/info.db
加上读写SD卡的权限:
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"></uses-permission>
最后通过
adb pull /storage/emulated/0/info.db c:/Users/山哥/Desktop/info.db
就可以将文件导入到桌面
考虑到不同手机外部存储路径可能不同的情况:
外部存储路径可以通过Environment.getExternalStorageDirectory().getPath()获得,
即在构造参数中传入:
super(context,Environment.getExternalStorageDirectory().getPath()+"/"+"info.db", null,4);
1 0
- 非root下,如何将android中的数据库文件存放到外部存储并导出
- android 代码将数据库文件导出到sd卡
- 如何将安卓虚拟机中的数据库文件导出到本地
- Android-将数据写入Excel表格并存储到外部存储中
- android eclipse 将项目中assets文件夹下的数据库文件存储到data/data/包名/databases下
- 如何将Perfmon中的数据存放到SqlServer数据库中
- 如何将Perfmon中的数据存放到SqlServer数据库中
- android中如何将下载的图片保存到手机SD(外部存储)卡中
- 非root用户 如何将cscope安装到指定目录
- 【Android】通过控制台将sqlite数据库文件导出
- 演示如何将数据库文件写入到 Excel
- 如何查看无法导出的android数据库文件?
- Mantis数据转移—将默认存储到数据库中的文件取出存放到硬盘上
- 本地导出的.sql数据库文件如何恢复到数据库中(Linux下)
- 如何将数据库文件从assets文件下拷贝到本地数据库zhon
- 将assets目录下的数据库文件拷贝到当前应用程序下的files目录下,并加载使用
- 如何生成微信二维码并将自己的信息存放到二维码中
- Ubuntu下如何将普通用户提升到root权限
- Find The Multiple poj1426 (DFS)
- Spark-RDD编程基础
- weka连接mysql
- java : Iterator Pattern
- Android创建原图的副本
- 非root下,如何将android中的数据库文件存放到外部存储并导出
- 学习classList写的小Demo
- hdu4292——Food(SAP+拆点)
- jQuery内容过滤选择器
- 海洋CMS6.28命令执行漏洞
- 洛谷 P1134 阶乘问题
- 专题:计算几何学 (多边形的中心) hdu1115Lifting the Stone
- getContextPath、getServletPath、getRequestURI、getRealPath、getRequestURL、的区别
- Stockbroker Grapevine