Я не из фона xcode, а из java и C#. Теперь я пытаюсь изменить свое приложение на ios и не уверен, что я понимаю, как правильно нарисовать, или более того, что такое проблема с xcodes!Кастинг с sqlite3
Я пытаюсь сделать что-то очень простое, получить значения из sqlite и заполнить объект NSMutableDictionary.
Я хотел бы получить такие значения, как long, int и string, и, похоже, мне нужно делать все виды кастингов, чтобы заставить компилятор понравиться. Может ли кто-то указать мне в правильном направлении, как то, что я должен писать, так как это обязательно необходимо.
Моя переменная-словарь myDictionary для этого примера.
Добавить строку NSDictionary
[myDictionary setValue:[[NSString alloc] initWithUTF8String:(char *)sqlite3_column_text(sqlStatement, 4)] forKey:@"myText"];
Добавить ИНТ в NSDictionary
[myDictionary setValue: [[NSNumber alloc] initWithUnsignedInt:sqlite3_column_int(sqlStatement, 0)] forKey:@"myInt" ];
ли все это отливка вам необходима? Я думал, что я мог бы сделать простые вещи, как этот
Добавление междунар к NSDictionary
[myDictionary setValue: sqlite3_column_int(sqlStatement, 0) forKey:@"myInt" ];
Но это изречение
неявное преобразование из 'Int' в 'ид' отвергается с ARC
Также проверено:
[myDictionary setValue: (int *)sqlite3_column_int(sqlStatement, 0) forKey:@"myInt" ];
Но я получаю
неявного преобразования типа указателя, не Objective-C «Int» в «ид» отвергается с ARC
Я попытался одни и те же вещи с текстом, а также , Кто-то, пожалуйста, сообщите мне, если я не буду делать это правильно.
Даже что-то вроде этого не работает
int *myVar = sqlite3_column_int(sqlStatement, 0);
И если я изменить его слишком
int myVar = sqlite3_column_int(sqlStatement, 0);
, который делает работу, то я не могу заполнить его в NSDictionary в этой ошибки
[myDictionary setValue:myVar forKey:@"intValue"];
Спасибо, ярлык очень полезен. Гораздо проще, если вы знаете, что эти методы существуют. Pitty один не существует для NSString, хотя ... или есть? – Gillardo
неважно, нашел [NSString stringWithUTF8String: ...]; – Gillardo
Другим удобным вызовом является [NSString stringWithFormat: @ ", например, форматы printf% d% @", an_Integer, an_ObjectiveC_object]; –