OStack程序员社区-中国程序员成长平台

标题: ios - 如何在土耳其字母中使用 'CapitalizedString'? [打印本页]

作者: 菜鸟教程小白    时间: 2022-12-13 02:14
标题: ios - 如何在土耳其字母中使用 'CapitalizedString'?

我对土耳其语字母有疑问。

我有一个反序列化 JSON 的方法。我从 Web 服务获取正确的数据,并将其设置为对象的变量。 newsCategory.name 包含 'ASKERİ HAVACILIK',即 NSString。

 +(NewsCategory*) convertCategory: (NSMutableDictionary *) jsonDictionary{
        NewsCategory *newsCategory = [[NewsCategory alloc] init];
        newsCategory.name =[jsonDictionary objectForKey"name"];
        return newsCategory;
    }

我必须将 'ASKERİ HAVACILIK' 转换为 'Askeri Havacılık'。所以我为此使用了 capitalizedString

NSString *capitalizedName = [jsonDictionary objectForKey"name"];
newsCategory.name =  [capitalizedName capitalizedString];

但不幸的是,它显示@“Askeri̇Havacilik”enter image description here

如何将其转换为 'Askeri Havacılık'



Best Answer-推荐答案


NSString *capitalizedName = [jsonDictionary objectForKey"name"];

NSString *accentedString = capitalizedName;
NSString * capitalizedString = [accentedString stringByFoldingWithOptions:NSDiacriticInsensitiveSearch locale:[NSLocale currentLocale]];
newsCategory.name =  [capitalizedString capitalizedString];

根据您要转换的字符串的性质,您可能希望设置一个固定的语言环境(例如英语),而不是使用用户的当前语言环境。这样,您就可以确保在每台机器上获得相同的结果。

关于ios - 如何在土耳其字母中使用 'CapitalizedString'?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26038279/






欢迎光临 OStack程序员社区-中国程序员成长平台 (https://ostack.cn/) Powered by Discuz! X3.4