0
私のアプリでは、同じカテゴリを持つ画像の数を取得するためにクエリを実行しています。そのカテゴリはパラメータとして渡されます。クエリが実行されると、1つまたは複数の結果の2つを取得します。そのためには、文字列を整数に変換する必要があると思います。私は文字列の値をチェックすると私に1が表示されますが、その値がメソッドに返されると、次のようなものが表示されます:695842など。理由は何でしょうか?助けてください。私は、コードの一部を掲載しています: -Sqliteデータベースのクエリ後の戻り値の問題
-(NSInteger)searchImagesInSameCategory:(NSString *)categoryName
{
NSArray *paths=NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES);
NSString *documentsDirectory= [paths objectAtIndex:0];
NSString *path=[documentsDirectory stringByAppendingPathComponent:@"SymbolTalkLanguageElement.sqlite"];
//Open the database
//might have to make database as property
if(sqlite3_open([path UTF8String], &dataBase) ==SQLITE_OK)
{
sqlite3_stmt *statement;
NSString *strSQL = [[NSString alloc]init];
strSQL = @"select Count(ImageName) from tblLanguageElement where Category='";
strSQL = [[strSQL stringByAppendingString:categoryName] stringByAppendingString:@"'"];
const char *bar = [strSQL UTF8String];
if(sqlite3_prepare(dataBase, bar, -1, &statement, NULL) == SQLITE_OK)
{
while (sqlite3_step(statement) == SQLITE_ROW)
{
NSLog(@"%@",[NSString stringWithUTF8String:(char *)sqlite3_column_text(statement, 0)]);
int k;
//NSString *string=[NSString stringWithUTF8String:(char *)sqlite3_column_text(statement, 0)];
//NSLog(string);
k=[NSString stringWithUTF8String:(char *)sqlite3_column_text(statement, 0)];
//NSLog([NSString stringWithFormat:@"Count for k:-%d",k]);
//[list addObject:[NSString stringWithUTF8String:(char *)sqlite3_column_text(statement, 0)]];
//return [NSString stringWithUTF8String:(char *)sqlite3_column_text(statement, 0)];
return k;
}
}
}
return 1;
}
おかげでたくさん..... – Christina
@Christina、乾杯を働きました。スタックオーバーフローはすべてのものを助けるために喜びを感じる:-) – EmptyStack
たくさんのより多くの助け:-)素晴らしい – Christina