日期:2014-05-16 浏览次数:20416 次
首先使用sqliteadDev(一个windows下图形化sqlite工具)建立一个新数据库。
android中使用sqlite、复制assets下的数据库到SD卡、支持大于1M的文件
如果使用SD卡,需要在AndroidManifest.xml中设置权限
< uses-permission android:name ="android.permission.WRITE_EXTERNAL_STORAGE" ></ uses-permission > < uses-permission android:name ="android.permission.MOUNT_UNMOUNT_FILESYSTEMS" ></ uses-permission >
?
?
import java.io.File;
import java.io.FileOutputStream;
import java.io.IOException;
import java.io.InputStream;
import java.io.OutputStream;
?
import android.content.Context;
?import android.database.sqlite.SQLiteDatabase;
import android.database.sqlite.SQLiteDatabase.CursorFactory;
import android.database.sqlite.SQLiteException;
import android.database.sqlite.SQLiteOpenHelper;
?
/**
?
?* DBHelper dbHelper = new DBHelper(this);
?* dbHelper.createDataBase();
?* SQLiteDatabase db = dbHelper.getWritableDatabase();
?* Cursor cursor = db.query()
?* db.execSQL(sqlString);
?* 注意:execSQL不支持带;的多条SQL语句,只能一条一条的执行,晕了很久才明白
?* 见execSQL的源码注释 (Multiple statements separated by ;s are not supported.)
?* 将把assets下的数据库文件直接复制到DB_PATH,但数据库文件大小限制在1M以下
?* 如果有超过1M的大文件,则需要先分割为N个小文件,然后使用copyBigDatabase()替换copyDatabase()
?*/
public class DBHelper extends SQLiteOpenHelper {
? ? //用户数据库文件的版本