android编程实现sd卡读取数据库的方法

作者:oldfeel 时间:2021-10-03 12:26:31 

本文实例讲述了android编程实现sd卡读取数据库的方法。分享给大家供大家参考,具体如下:

先在 Manifest 里添加权限:


<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
<uses-permission android:name="android.permission.MOUNT_UNMOUNT_FILESYSTEMS" />

然后在 mainActivity 添加方法:


SQLiteDatabase db;
private final String DATABASE_PATH = android.os.Environment
.getExternalStorageDirectory().getAbsolutePath() + "/vote";
private String DATABASE_FILENAME = "db_vote.db";
// 初始化数据库
private SQLiteDatabase openDatabase() {
 try {
  String databaseFilename = DATABASE_PATH + "/" + DATABASE_FILENAME;
  File dir = new File(DATABASE_PATH);
  if (!dir.exists())
   dir.mkdir();
  if (!(new File(databaseFilename)).exists()) {
   InputStream is = getResources().openRawResource(R.raw.db_vote);
   FileOutputStream fos = new FileOutputStream(databaseFilename);
   byte[] buffer = new byte[8192];
   int count = 0;
   while ((count = is.read(buffer)) > 0) {
    fos.write(buffer, 0, count);
   }
   fos.close();
   is.close();
  }
  db = SQLiteDatabase.openOrCreateDatabase(databaseFilename, null);
  return db;
 } catch (Exception e) {
  e.printStackTrace();
 }
 return null;
}

希望本文所述对大家Android程序设计有所帮助。

标签:android,sd卡,数据库
0
投稿

猜你喜欢

  • 深入剖析java中的集合框架

    2022-04-27 18:48:16
  • 腾讯开源消息中间件TubeMQ总体介绍分析

    2022-06-21 05:10:03
  • springboot中redis正确的使用详解

    2021-12-24 02:39:17
  • 探讨Android 的屏幕滚动操作不如 iPhone 流畅顺滑的原因

    2023-04-05 09:05:33
  • 浅谈 java中ArrayList、Vector、LinkedList的区别联系

    2022-04-25 23:26:54
  • Java中List.contains(Object object)方法使用

    2022-04-25 20:47:11
  • Android实现背景图滑动变大松开回弹效果

    2022-10-15 10:45:15
  • DecimalFormat多种用法详解

    2022-11-13 15:06:52
  • android使用SoundPool播放音效的方法

    2023-07-08 01:16:29
  • java数据结构基础:栈

    2022-11-16 09:30:21
  • Guava - 并行编程Futures详解

    2022-04-28 23:16:34
  • WinForm实现最小化到系统托盘方法实例详解

    2023-10-05 05:53:30
  • Android Intent的几种用法详细解析

    2023-08-23 20:01:01
  • Android实现欢迎滑动页面

    2022-03-13 14:40:53
  • 如何基于SpringBoot实现人脸识别功能

    2022-04-19 13:23:21
  • 如何将maven源改为国内阿里云镜像

    2023-07-25 13:47:33
  • Java线程的全方位详解

    2023-04-11 14:02:55
  • 深入理解strcpy与memcpy的区别

    2023-02-23 21:45:32
  • springboot加载复杂的yml文件获取不到值的解决方案

    2021-07-29 18:26:11
  • Java Socket编程(五) 简单的WEB服务器

    2023-05-23 01:00:04
  • asp之家 软件编程 m.aspxhome.com