У меня странная ситуация, когда я пытаюсь преобразовать std :: string в NSString.
Я пробовал обычный метод, который обычно работает: [NSString stringWithUTF8String: myCppString.c_str()];
Тем не менее, я получаю нуль. Я думаю, что это имеет какое-то отношение к странным персонажам. Это в основном потому, что я видел следующее в данных о расследовании:
Обратите внимание на отмеченные вопросительные знаки. Я попробовал другой вызов, который я нашел при просмотре SO, но он тоже не работал: [NSString stringWithCString: myCppString encoding: NSUTF8StringEncoding];
Я могу напечатать строку как const char * и как std :: string, как вы видели из журналов. Строка c++ была сделана с помощью ostringstream, если это имеет какое-либо влияние. Данные поступают с сервера, который должен быть UTF-8 и передается через json в базу данных sqlite.
У вас есть какие-либо советы о том, как я могу заставить NSString работать?
=== [EDIT] === Это то, что вышло за шестнадцатеричные данные по одной конкретной причине с перевернутыми вопросительными знаками.
Оказывается, что странные символы представляли несуществующим, которые читались в моем конкретном случае, я читал ключ карты и не проверял, вернула ли команда find myMap.end().
Благодарим вас за то, что вы изучили мой вопрос.