android sqlite循环读取和插入
我在从字符串android sqlite循环读取和插入,android,sqlite,Android,Sqlite,我在从字符串addressString中读取此信息并将其插入sqlite选项卡时遇到问题,因此这是我想读取的信息,我应该只提取括号之间的文本,因此表应该如下所示 BOOKNO,FROM,TO,LINK,SINCE,SINCE 这些是我需要插入到表中的五列,因此我使用indexof()提取括号之间的内容 我的第一行应该只包含 addressString = "BOOKNO= [1] From= [ 2011-02-28 07:00:52] To= [2011-03-17 07:01:02]
addressString
中读取此信息并将其插入sqlite选项卡时遇到问题,因此这是我想读取的信息,我应该只提取括号之间的文本,因此表应该如下所示
BOOKNO,FROM,TO,LINK,SINCE,SINCE
这些是我需要插入到表中的五列,因此我使用indexof()提取括号之间的内容
我的第一行应该只包含
addressString =
"BOOKNO= [1]
From= [ 2011-02-28 07:00:52]
To= [2011-03-17 07:01:02]
Link= [http://www.example.com]
SINCE= [5] days.
BOOKNO= [2]
From= [ 2011-03-01 17:55:15]
To= [2011-03-30 17:55:21]
Link= [http://www.something.com]
SINCE= [3] days."
第二排
1,2011-02-28 07:00:52,2011-03-17 07:01:02,http://www.example.com,5
我需要插入前5列并再次循环以插入下5个addressString
包含上述所有信息及其作为一个字符串读取的内容
这是我用来阅读的代码
db.open()长idx
2,011-03-01 17:55:15,2011-03-30 17:55:21,http://www.something.com,3
字符串行[]={addressString};
字符串字段[]=新字符串[lines.length];
对于(int i=0;i 对于(int j=0;j您正在调用db.insertTitle,是否打算使用db.insert?检查lines.length的值。看起来它返回1
String lines[] = {addressString};
String fields[] = new String[lines.length];
for (int i = 0; i < lines.length; i++) {
for (int j=0; j<5; j++){
int be = lines[i].indexOf('[');
int e = lines[i].indexOf(']');
fields[i] = lines[i].substring(be+1, e);
}
idx = db.insertTitle(fields[0],fields[1],fields[2],fields[3],fields[4]);
}
if (addressString != "didn't read titels"){
String lines[] = {addressString};
String fields[] = new String[lines.length];
for (int i = 0; i < lines.length; i++) {
int be = lines[i].indexOf('[');
int e = lines[i].indexOf(']');
fields[i] = lines[i].substring(be+1, e);
myLoutputText.setText(fields[i]);
}