汉字转换成拼音封装
2015-09-18 22:47
507 查看
用nsobject建个文件,在.h文件中敲以下代码
@interface NSString (Characters)/* 讲汉字转换为拼音 */
- (NSString *)pinyinOfName;
/* 汉字转换为拼音后,返回大写的首字母 */
- (NSString *)firstCharacterOfName;
@end
.m中
@implementation NSString (Characters)/* 将汉字转换为拼音 */
- (NSString *)pinyinOfName
{
NSMutableString * name = [[[NSMutableString alloc] initWithString:self ] autorelease];
CFRange range = CFRangeMake(0, 1); /* 汉字转换为拼音,并去除音调 */ if ( ! CFStringTransform((__bridge CFMutableStringRef) name, &range, kCFStringTransformMandarinLatin, NO) || ! CFStringTransform((__bridge CFMutableStringRef) name, &range, kCFStringTransformStripDiacritics, NO)) { return @""; } return name;
}
/* 汉字转换为拼音后,返回大写的首字母 */
- (NSString *)firstCharacterOfName
{
NSMutableString * first = [[[NSMutableString alloc] initWithString:[self substringWithRange:NSMakeRange(0, 1)]] autorelease]; CFRange range = CFRangeMake(0, 1); /* 汉字转换为拼音,并去除音调 */ if ( ! CFStringTransform((__bridge CFMutableStringRef) first, &range, kCFStringTransformMandarinLatin, NO) || ! CFStringTransform((__bridge CFMutableStringRef) first, &range, kCFStringTransformStripDiacritics, NO)) { return @""; } NSString * result; result = [first substringWithRange:NSMakeRange(0, 1)]; return result.uppercaseString;
}
@end
照着上面的代码,打完只要拖入你需要的工程中就可以了.封装的好处在于此.^_^Y.
相关文章推荐
- android 代码实现控件之间的间距
- 峰回路转,Firefox 浏览器即将重返 iOS 平台
- 峰回路转,Firefox 浏览器即将重返 iOS 平台
- [Android]在代码里运行另一个程序的方法
- 不可修补的 iOS 漏洞可能导致 iPhone 4s 到 iPhone X 永久越狱
- iOS 12.4 系统遭黑客破解,漏洞危及数百万用户
- 每日安全资讯:NSO,一家专业入侵 iPhone 的神秘公司
- 肯特·贝克:改变人生的代码整理魔法
- [转][源代码]Comex公布JailbreakMe 3.0源代码
- 网页恶意代码的预防
- 高手写的Tracer-Flash代码调试类代码下载
- CSS代码缩写技巧
- 非主流Q-zOne代码代码搜集第1/2页
- CreateWeb.vbs 代码
- Lua中编译执行代码相关的函数详解
- 更有效率的css代码编写第1/3页
- 代码中到底应不应当写注释?
- SQL语言查询基础:连接查询 联合查询 代码
- winform异型不规则界面设计的实现方法