android中的SQLite用法在这里
现在电脑中有一个words文件,可用notepad++(需要安装TextFX插件方可显示所有字符)打开如下
其中橙色箭头表示一个Tab符,LF表示Line Feed一个换行符,可在notepad++安装HexEditor插件查看其16进制编码。
该文件共两列,第一列为word,存放的是单词,第二列为level,存放的是一个数字。
要将该文件中的数据转化为db数据库需要做以下几步。
1.将文件中的列标题删除,只留下需要插入到db数据库文件中的纯数据,删除后如图
2.将文件导入到应用程序的databases目录下
命令格式:adb push 源文件路径目的文件路径
本文adb工具路径为d:\android\sdk\platform-tools
这里源文件words路径为D:\words
这里应用程序名称为MyApp,因此目的文件路径为/data/data/com.example.myapp/databases
因此这里使用命令 adb push D:\words/data/data/com.example.myapp/databases
进入到应用程序的databases目录下,可看到文件已经导入
3.使用SQLite建立数据库文件myapp.db并建立一个表words,表的结构必须与words文件数据的结构一致,也就是说表必须有两列,建立过程如下
通过.databases和.tables的验证,数据表words已经建立完成
4.将words文件中的数据导入到words数据表中
首先通过ls命令可以看到databases目录下已经有了两个文件,分别为words和myapp.db,其中myapp.db文件中有一个数据表words
然后根据原始words文本文件中的数据存储的结构设置Tab符为导入数据的分隔符
命令为.separator "" 其中引号"之间为一个Tab
最后即可将原始words文本文件中的数据导入到myapp.db的数据表words中
命令为.import [源数据的文件全名(包括扩展名)] [目的数据表名称]
这里使用 .import words words 即可导入。这里名字起的不好,第一个 words 为源数据的文件全名,该文件无扩展名,所以只写 words, 若扩展名为 txt ,则写 words.txt ;第二个 words 为数据表的名称。
5.通过sql语句查看数据表中的数据验证是否导入成功
通过上图可看到,数据已经导入成功。
6.将已经导入数据的数据库文件导出到电脑中,以便添加到android工程中使用或者作为其他用处.
命令格式:adb pull 源文件路径目的文件路径
本文adb工具路径为d:\android\sdk\platform-tools
这里源文件words.db路径为/data/data/com.example.myapp/databases D:\words
这里为将words.db导入到电脑中的D盘,因此目的文件路径为D:\
因此这里使用命令 adb pull /data/data/com.example.myapp/databases/myapp.db D:\
然后打开D盘,可以看到myapp.db了。
参考文献
[1]http://blog.csdn.net/dany1202/article/details/6589914
[2]http://database.51cto.com/art/201108/281278.htm