【发布时间】:2016-07-19 11:15:52
【问题描述】:
我想在objective-c中以listArray的形式从sqlite db中获取数据(就像在java android中一样)。
这里我有这个的 java 类模型
如何将这些类转换为在减速(.h)和实现(.m)中混淆的目标 c 代码
第一类
public class RecordingList {
public ArrayList<RecordingItem> Items = new ArrayList<RecordingItem>();
}
2 级
public class RecordingItem {
public int ID;
public String RecordingTitle;
public String RecordingSubTitle;
public String RecordingAudioPath;
public String RecordingDuration;
public String RecordingNotePath;
public String Date;
public String Time;
public String PlayListId;
public ArrayList<RecordingAttachments> recordingAttachmentses = new ArrayList<RecordingAttachments>();
}
我已经尝试像这样在objective-c中获取数据
- (NSArray*) getAllNotes
{
const char *dbpath = [databasePath UTF8String];
if (sqlite3_open(dbpath, &database) == SQLITE_OK)
{
NSString *querySQL = [NSString stringWithFormat:
@"SELECT * FROM recordingItem"];
const char *query_stmt = [querySQL UTF8String];
NSMutableArray *resultArray = [[NSMutableArray alloc]init];
if (sqlite3_prepare_v2(database,
query_stmt, -1, &statement, NULL) == SQLITE_OK)
{
if (sqlite3_step(statement) == SQLITE_ROW)
{
NSString *name = [[NSString alloc] initWithUTF8String:
(const char *) sqlite3_column_text(statement, 0)];
[resultArray addObject:name];
NSString *department = [[NSString alloc] initWithUTF8String:
(const char *) sqlite3_column_text(statement, 1)];
[resultArray addObject:department];
NSString *year = [[NSString alloc]initWithUTF8String:
(const char *) sqlite3_column_text(statement, 2)];
[resultArray addObject:year];
return resultArray;
}
else{
NSLog(@"Not found");
return nil;
}
sqlite3_reset(statement);
}
}
return nil;
}
但这不是我想要的,我想在对象列表中获取数据我该怎么做?
提前致谢
【问题讨论】:
标签: ios objective-c sqlite nsmutablearray