Android 关于 如何使用外界导入的数据库文件
来源:互联网 发布:网络规划与设计 编辑:程序博客网 时间:2024/06/05 04:35
- package com.jamin;
- import java.io.File;
- import java.io.FileNotFoundException;
- import java.io.FileOutputStream;
- import java.io.IOException;
- import java.io.InputStream;
- import android.content.Context;
- import android.content.res.Resources.NotFoundException;
- import android.database.sqlite.SQLiteDatabase;
- import android.os.Environment;
- public class DBManager {
- private final int BUFFER_SIZE = 400000;
- public static final String DB_NAME = "callattribution.db";
- public static final String PACKAGE_NAME = "com.jamin";
- public static final String DB_PATH = "/data"
- + Environment.getDataDirectory().getAbsolutePath() + "/"
- + PACKAGE_NAME;
- private SQLiteDatabase database;
- private Context context;
- DBManager(Context context){
- this.context = context;
- }
- public void openDatabase(){
- this.database = this.openDatabase(DB_PATH + "/" + DB_NAME);
- }
- public SQLiteDatabase openDatabase(String path){
- try {
- if(!(new File(path).exists())){
- InputStream is = this.context.getResources().openRawResource(R.raw.callattribution);//导入数据库
- FileOutputStream fos = new FileOutputStream(path);
- byte [] buffer = new byte[BUFFER_SIZE];
- int count = 0;
- while((count = is.read(buffer))>0){
- fos.write(buffer , 0 , count);
- }
- fos.close();
- is.close();
- }
- SQLiteDatabase db = SQLiteDatabase.openOrCreateDatabase(path, null);
- return db;
- } catch (NotFoundException e) {
- // TODO Auto-generated catch block
- e.printStackTrace();
- } catch (FileNotFoundException e) {
- // TODO Auto-generated catch block
- e.printStackTrace();
- }catch (IOException e) {
- // TODO Auto-generated catch block
- e.printStackTrace();
- }
- return null;
- }
- public void closeDatabase(){
- this.database.close();
- }
- }
- <pre name="code" class="java">package com.jamin;
- import android.app.Activity;
- import android.database.Cursor;
- import android.database.sqlite.SQLiteDatabase;
- import android.os.Bundle;
- import android.util.Log;
- import android.view.View;
- import android.view.View.OnClickListener;
- import android.widget.Button;
- import android.widget.EditText;
- import android.widget.TextView;
- public class CallAtributionActivity extends Activity implements OnClickListener{
- /** Called when the activity is first created. */
- Button button;
- EditText et;
- TextView tv;
- public DBManager dbhelper;
- SQLiteDatabase sqldb;
- private static final String TAG = "jamin";
- @Override
- public void onCreate(Bundle savedInstanceState) {
- super.onCreate(savedInstanceState);
- setContentView(R.layout.main);
- button = (Button) findViewById(R.id.button);
- et = (EditText) findViewById(R.id.edittext);
- tv = (TextView) findViewById(R.id.textview);
- dbhelper = new DBManager(this);
- dbhelper.openDatabase();
- dbhelper.closeDatabase();
- button.setOnClickListener(this);
- sqldb = SQLiteDatabase.openOrCreateDatabase(DBManager.DB_PATH + "/" + DBManager.DB_NAME, null);
- }
- public void onClick(View v) {
- // TODO Auto-generated method stub
- if(v == button){
- Log.d(TAG, "onClick");
- String searchstring = et.getText().toString();
- Cursor c = sqldb.rawQuery("select city from attribution where " +"num=" +Integer.parseInt(searchstring) , null);
- c.moveToFirst();
- tv.setText(c.getString(c.getColumnIndex("city")));
- }
- }
- }
这个代码还存在很多BUG,只是演示如何使用导入的数据库,把DB文件放到res/raw下,然后通过DBManager 把数据库导入data/data/里
- Android 关于 如何使用外界导入的数据库文件
- Android 关于 如何使用外界导入的数据库文件
- android如何使用数据库文件?
- android如何使用数据库文件?
- 如何使用外部的数据库文件
- 如何导入sqlserver数据库文件
- Android如何导入外部已存在的数据库文件(附源码)
- 如何使用php文件引入外界的js文件
- 数据库文件的导入
- 如何查看无法导出的android数据库文件?
- android 将已经有数据的数据库文件导入项目
- 【Android】oui.txt格式化的sqlite数据库文件直接导入
- Android 中使用预先创建的数据库文件
- 数据库文件的导入和导出
- Oracle 数据库文件的导入导出
- 如何在oracle中导入dmp数据库文件
- 如何在oracle中导入dmp数据库文件
- 如何在oracle中导入dmp数据库文件
- 【转】一位软件工程师的6年总结
- yaffs格式根文件系统制作
- spring的view
- JAVA I/O流 学习
- 通过nfs服务挂载根文件系统
- Android 关于 如何使用外界导入的数据库文件
- android 小常识(包含一些界面开发的推荐颜色和自定义按钮~)
- YAFFS2概述
- Message,MessageQueue,Looper,Handler详解
- Intent大全,随用随更新
- yaffs 文件系统移植
- 利用Sensor实现android手机类似于微信摇一摇
- 数字图像基础,论坛,算法库matlab,opencv,halcon
- C语言字符串处理函数