废话不多说,直接给大家贴关键代码了。
具体代码如下所示:
#import <Foundation/Foundation.h>@interface NSString (Utils)/*** 汉字的拼音** @return 拼音*/- (NSString *)pinyin;@end#import "NSString+Utils.h"@implementation NSString (Utils)//汉字的拼音- (NSString *)pinyin{NSMutableString *str = [self mutableCopy];CFStringTransform(( CFMutableStringRef)str, NULL, kCFStringTransformMandarinLatin, NO);CFStringTransform((CFMutableStringRef)str, NULL, kCFStringTransformStripDiacritics, NO);return [str stringByReplacingOccurrencesOfString:@" " withString:@""];}@end
下面接着看下iOS将汉字转成拼音
在ios开发中经常碰到做通讯录需要将汉字转成拼音的情况,以下就是我把汉字转成拼音的方法
+ (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];}
用kCFStringTransformMandarinLatin方法转化出来的是带音标的拼音,如果需要去掉音标,则继续使用kCFStringTransformStripCombiningMarks方法即可。
以上所述是小编给大家介绍的iOS 汉字的拼音,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对武林网网站的支持!
新闻热点
疑难解答