NSString to char []? - PullRequest
       1

NSString to char []?

0 голосов
/ 23 декабря 2010
struct DATA
{
    unsigned char USERNAME[32];
};

Я хочу скопировать NSString в структуру DATA.USERNAME, как это сделать?

Ответы [ 2 ]

2 голосов
/ 23 декабря 2010

Вы можете использовать метод -[NSString UTF8String] для получения строки C вашей строки NSString. Затем вы можете использовать strncpy(DATA.USERNAME, [mystring UTF8String], 32); для копирования этой строки в структуру.

0 голосов
/ 23 декабря 2010

Сначала нужно узнать, какая кодировка ожидается.NSString может генерировать байты в широком диапазоне кодировок.Затем вы передаете указатель на массив USERNAME на getCString:maxLength:encoding:.Так, например, если вы хотите скопировать содержимое NSString myCocoaString как UTF-8 в поле USERNAME структуры DATA с именем myData, вы должны сделать:

BOOL success = [myCocoaString getCString:myData.USERNAME maxLength:32 encoding:NSUTF8StringEncoding];
NSLog(@"Was %@ to store string contents in USERNAME!", success ? @"able" : @"not able");
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...