Как конвертировать NSString в / из TCHAR (используя CLucene)

Я разрабатываю приложение для iPhone, в которое я импортировал C++ CLucene библиотека. Почти все CLucene функция требует String как TCHAR*,

У меня есть некоторые проблемы в конвертации NSString в / из этого типа данных. Я искал много решений, но ни одно не помогло.

Можете ли вы показать мне, как сделать это преобразование?

Я смог заставить библиотеку работать с определенной тестовой строкой with _T() макро. Однако XCode дает мне:

Conversion from string literal to 'TCHAR *' (aka 'wchar_t *') is deprecated.

Какой метод не рекомендуется использовать?

Спасибо!

Изменить: я решил так:

Преобразование из NSString в TCHAR*:

(const TCHAR *) [stringa cStringUsingEncoding:NSUTF32LittleEndianStringEncoding];

Преобразование из TCHAR* в NSString:

[[NSString alloc] initWithBytes:ctc length:wcslen(ctc) *  sizeof(TCHAR)  encoding:NSUTF32LittleEndianStringEncoding]

благодарю вас!

1 ответ

Следующий код работал для меня:

NSString *pStr = [NSString stringWithFormat:@"%S", GetTCHARString()];
Другие вопросы по тегам