1.在使用sqlite数据库时,先将数据库文件打包,放置在assets中如下图:
将文件放置下android中的assets下的所有文件都会打包在APK中,可以用7zip查看apk文件
2.在qt代码读取数据文件,注意在assets下的文件都是Read-Only,需要将文件拷贝到别的路径并设置可读写权限,这样才可以操作数据库
QFile dbFile("assets:/database/doctors.sqlite");
if (dbFile.exists())
{
qDebug()<<"the doctos.sqlite exist";
QString dbPath = AppDir() +"/doctors.sqlite";
//AppDir()为可以自己设定的路径 ,本程序路径是 /data/user/0/org.qtproject.example/files/doctors.sqlite
dbFile.copy(dbPath);
QFile::setPermissions(dbPath,QFile::WriteOwner | QFile::ReadOwner);
}
3.可以读写数据库文件了
总结:这里主要介绍数据库文件如何APK打包,并且需要将此数据库文件拷贝到别的路径下设置读写权限,操作sqlite数据的代码不做介绍了。