基于Android系统的电子书阅读器的设计与实现

  • 格式:doc
  • 大小:1.51 MB
  • 文档页数:19

下载文档原格式

  / 19
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

4.3.2 建表语句

1)创建:

1、创建书的表:

create table IF NOT EXISTS book(bid integer primary key autoincrement,bpath varchar(255) not null);

2、创建书签的表:

create table IF NOT EXISTS bookmark(bmid integer primary key autoincrement, bpath varchar(50) not null,bmname varchar(50) not null,bmoffset integer not null,bmsavetime varchar(20) not null);

3、创建用户管理的表:

create table IF NOT EXISTS user(userid integer primary key autoincrement, username varchar(20) not null,password varchar(20) not null, telephone varchar(20) not null);

4、创建最近阅读的表

create table IF NOT EXISTS nearlyread(bookid integer primary key autoincrement, bookname varchar(50) not null,bookreadtime varchar(20) not null); 5、创建下载管理的表

create table IF NOT EXISTS down(downid integer primary key autoincrement, downuser varchar(20) not null,downbook varchar(20) not null, downtime varchar(20) not null);

2)SQlite3数据库使用方法:

选择:select from bookmark where bmid=1;

插入:insert (bookmark,null,values);

删除:delete from bookmark where bmid=3 ;

查找:query(table, columns, selection, selectionArgs, groupBy, having, orderBy) 4.3.3 数据表分析

本数据库用的是一个轻量级嵌入型数据库sqlite3 ,即创建了一个数据库reader.db,在数据库中创建了几张数据表。

在建设网站系统或者软件之前,我们必须对系统所用到的数据进行大致的分类和具体的结构设计,既要做到清晰明了,又要能适应系统各项功能的调用,而不至于产生结构上的逻辑混乱,保证关键数据在意外情况下不会被破坏,可以说

Book表(用来存放书籍,如表4-1):

字段名称数据类型条件约束

bid integer primary key

bpath varchar(255)not null

表4-1 书籍数据表

Bookmark表(管理书签,如表4-2):

字段名称数据类型条件约束

Bmid Integer primary key

Bpath varchar(50)not null

Bmname varchar(50)not null

bmoffset Integer not null

msavetime varchar(20)not null

表4-2 书签数据表

User表(用户数据,如表4-3):

字段名称数据类型条件约束

Userid Integer primary key

username varchar(50)not null

password varchar(50)not null

telephone varchar(20)not null

表4-3 用户数据表

Nearlyread表(最近阅读,如表4-4):

字段名称数据类型条件约束

Bookid Integer primary key

bookname varchar(50)not null

bookreadtime varchar(20)not null

表4-4 最近阅读数据表

Down表(下载,如表4-5)::

字段名称数据类型条件约束

Downid Integer primary key

Downuser varchar(50)not null downtime varchar(20)not null

表4-5 下载数据表

5.4.1 获取sd卡上的txt文本

由于一个Android模拟器或者是一个手机客户终端上只会配置一个sdcard,所以一步移动设备上有各种各样的应用App,而且各种App都可能会由数据或者文件存储到移动设备的sdcard上,故而有各式各样的文件类型是该款软件不需要的。也是用户选择本款软件时所不需要的信息文件,于是通过构造一个过滤式的方法让软件只接受来自sdcard上的TXT格式的文本文件。该方法是先通过判断是否存储路径是sdcard,通过getRecordFiles()方法过滤掉其他无用文件,将剩余的TXT文件放置集合AirrayList中,然后通过Android的空间Listview将其目录结构文件给显示出来。代码如下:

private void getRecordFiles() {

recordFiles= new ArrayList();

if (isSdcard) {

File files[] = txtDir.listFiles();

if (files != null) {

for (int i = 0; i < files.length; i++) {

if (files[i].getName().indexOf(".") >= 0) {

/* 只取.txt文件*/

String file =

files[i].getName().substring(files[i].getName().indexOf("."));

if (file.toLowerCase().equals(".txt"))

recordFiles.add(files[i].getName());

}

}

}

}

}