У меня есть список, который использует UILabel для каждой из его строк. Если я попытаюсь отобразить специальные символы, такие как å, ä, ö, они отобразятся как å ä ö Как преобразовать их в NSString в кодировке UTF8?
iphone - отображать закодированные символы, такие как å, ä, ö в UILabel
comment
каков источник ваших данных?
- person Mutix   schedule 23.02.2012
comment
Я получаю это со своего сервера. Он отлично отображается в веб-просмотре, но не в uilabel.
- person Suchi   schedule 23.02.2012
comment
Как вы устанавливаете строку в метку? В зависимости от того, как вы получаете текст в NSString, вам может потребоваться установить кодировку... вы смотрели на это? Кроме того, как будет выглядеть вывод, если вы зарегистрируете 1) исходную строку 2) текст UILabel после его установки? developer.apple.com /library/mac/#documentation/Какао/Справочник/
- person David Rönnqvist   schedule 23.02.2012
comment
Я просто делаю [secondLabel setText:str]; где str — шведские буквы (,,)
- person Suchi   schedule 23.02.2012
comment
в журнале я также вижу это как (,,), но в веб-просмотре я вижу фактические символы
- person Suchi   schedule 23.02.2012
comment
См. это обсуждение: stackoverflow.com/questions/1105169/ Возможно что-то там будет полезно
- person James Thiele   schedule 23.02.2012
comment
@Suchi, в моем случае Аландские острова неправильно отображаются в списке стран. поэтому, пожалуйста, дайте мне решение для этого. Спасибо.
- person Ilesh P   schedule 23.09.2014
Ответы (1)
Символы правильно отображаются в WebView, потому что объекты HTML правильно интерпретируются им.
Возможно, эта удобная категория NSString поможет вам отобразить текст в UILabel так, как вы хотите:
https://github.com/mwaterfall/MWFeedParser/blob/master/Classes/NSString+HTML.m
Импортируйте файлы NSString+HTML.h и NSString+HTML.m, а затем в своем классе используйте
#import "NSString+HTML.h"
и тогда вы можете использовать
NSString *decodedString = [encodedString stringByDecodingHTMLEntities];
ИЗМЕНИТЬ:
Вы также можете попробовать решение HerbertHansen на досках разработки Apple, которое не нужна целая библиотека
person
Mutix
schedule
23.02.2012
Есть ли способ сделать это без использования внешних библиотек?
- person Suchi; 23.02.2012
Я отредактировал свой ответ чем-то, что вы можете попробовать, что не требует внешней библиотеки.
- person Mutix; 23.02.2012
Библиотека работает просто отлично. Редактирование мне не помогло. Любые другие идеи?
- person Suchi; 24.02.2012
Есть ли конкретная причина, по которой использование библиотеки является проблемой для вас?
- person Mutix; 24.02.2012
Как раз из-за увеличения размера. Если есть более простое решение, я бы определенно пошел на это. Библиотека - худший случай для меня.
- person Suchi; 24.02.2012
снова отредактировал ответ с помощью решения, основанного на NSXMLParser, которое может лучше соответствовать вашим потребностям в этом случае.
- person Mutix; 24.02.2012
@Mutix привет, в моем случае Аландские острова неправильно отображаются в списке стран. поэтому, пожалуйста, дайте мне решение для этого. Спасибо.
- person Ilesh P; 23.09.2014