Как конвертировать 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()];