У меня есть БД SQLite и экспортировать некоторый результат с запросомСохранить все содержимое NSMutableArray в файле IOS
sqlite3 *MyDB;
const char *dbpath = [StringPathDB UTF8String]; // Convert NSString to UTF-8
NSString *querySQL = @"select * from chat order by id desc limit 20";
if (sqlite3_open(dbpath, &MyDB) == SQLITE_OK)
{
const char *sql = [querySQL UTF8String];
sqlite3_stmt *searchStatement;
if (sqlite3_prepare_v2(MyDB, sql, -1, &searchStatement, NULL) == SQLITE_OK)
{
while (sqlite3_step(searchStatement) == SQLITE_ROW)
{
NSString *nickname = [NSString stringWithUTF8String:(char *)sqlite3_column_text(searchStatement, 0)];
NSString *time = [NSString stringWithUTF8String:(char *)sqlite3_column_text(searchStatement, 1)];
NSString *text = [NSString stringWithUTF8String:(char *)sqlite3_column_text(searchStatement, 2)];
Тогда я положил все в NSMutableArray
NSMutableArray *list = [[NSMutableArray alloc] init];
[list addObject:nickname];
[list addObject:time];
[list addObject:text];
Когда я пытаюсь сохранить аль в файле с кодом
for(int i = 0; i < [list count]; i++) {
NSLog(@"%@",list);
[list writeToFile:filePATH atomically:YES];
break;
}
Он правильно маркирует NSSC, но в файле сохраняется только последняя запись не все arra у. Пожалуйста, помогите мне!
Что такое 'filePATH'? Как вы его создаете? – Undo
Все ли в 'list', как проверено' NSLog() '? – zaph
Вам нужно будет аккумулировать все записи, чтобы написать их все. В ваш список будет включена только одна запись. (И если вы пишете несколько записей, их не будет отделять. Вам нужно подумать над тем, что вы пытаетесь сделать.) –