汉字转换拼音,网络上的三种方式

第一种,获取拼音首字母(传入汉字字符串, 返回大写拼音首字母)

- (NSString *)firstCharactor:(NSString *)aString

{

//转成了可变字符串

NSMutableString *str = [NSMutableString stringWithString:aString];

//先转换为带声调的拼音

CFStringTransform((CFMutableStringRef)str,NULL, kCFStringTransformMandarinLatin,NO);

//再转换为不带声调的拼音

CFStringTransform((CFMutableStringRef)str,NULL, kCFStringTransformStripDiacritics,NO);

//转化为大写拼音

//  NSString *pinYin = [str capitalizedString];

//    //获取并返回首字母

//    return [pinYin substringToIndex:1];

return str;

}

第二种,这里是用了copy,_ _bridge(C转换为OC的一种方式)

+ (NSString *)transform:(NSString *)chinese

{

NSMutableString *pinyin = [chinese mutableCopy];

CFStringTransform((__bridge CFMutableStringRef)pinyin, NULL, kCFStringTransformMandarinLatin, NO);

CFStringTransform((__bridge CFMutableStringRef)pinyin, NULL, kCFStringTransformStripCombiningMarks, NO);

NSLog(@"%@", pinyin);

return [pinyin uppercaseString];

}

第三种,自己去搜索美团城市列表展示,那个demo很全面,不过理解起来需要一点时间

你可能感兴趣的:(汉字转换拼音,网络上的三种方式)