我用自己编辑好的sqlite数据库文件,里面包含有数据,我把数据库文件放在raw文件(文件大小超过1M)里,按照网络上的方法使用流写到sdcard上面,试了一天试不成功,每次复制到sdcard上文件就是0字节了,求在这方面有经验的高手帮助!!!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.nationexam);
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();
}
SQLiteDatabase database = SQLiteDatabase.openOrCreateDatabase(
databaseFilename, null);
return database;
} catch (Exception e) {
}
return null;
}
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.nationexam);
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();
}
SQLiteDatabase database = SQLiteDatabase.openOrCreateDatabase(
databaseFilename, null);
return database;
} catch (Exception e) {
}
return null;
}
解决方案 »
- java.lang.NoClassDefFoundError: org.androidpn.client.PersistentConnectionListen
- 我自己的apk应用程序能否创建一个守护进程?
- 有谁在android中用过scriptengineManager这个API没有?
- 类似于.net弹出层的效果.
- onTouchEvent闪屏
- 请提供关于Android 使用 JNI 的实例
- view组件设置动画的问题--怎么让一个组件同时有两种动画变换?
- 關於com.google.android.maps.MyLocationOverlay 問題
- 怎样通过pc给联通号发信息?
- ViewPage实现的广告条效果 想对里面的对面进行点击的监听
- Android怎么链接MSSQL
- android中,关于webview中小问题,在线等
我想靠代码来实现的,在程序安装后,第一次启动,将数据库文件复制到手机sdcard上
InputStream is =getResources().openRawResource(R.raw.nationexam);
FileOutputStream fos = new FileOutputStream(databaseFilename);
int len=0;
while(true){
byte[] datas = new byte[1024];
len = is.read(datas,0,1024);
if(len<=0){
break;
}else{
fos.write(datas, 0, len);
fos.flush();
}
}
试试这样...