iOS中文转成拼音。
oc:
NSString *hanziText = @"中文转拼音"; if ([hanziText length]) { NSMutableString *ms = [[NSMutableString alloc] initWithString:hanziText]; if (CFStringTransform((__bridge CFMutableStringRef)ms, 0, kCFStringTransformMandarinLatin, NO)) { NSLog(@"pinyin: %@", ms); } if (CFStringTransform((__bridge CFMutableStringRef)ms, 0, kCFStringTransformStripDiacritics, NO)) { NSLog(@"pinyin: %@", ms); } }
swift:
let s = "中文转拼音" let ens = NSMutableString(string: s) as CFMutableString // 此时有声调 CFStringTransform(ens, UnsafeMutablePointer<CFRange>(), kCFStringTransformMandarinLatin, false) NSLog("\(ens)") // 去掉声调 CFStringTransform(ens, UnsafeMutablePointer<CFRange>(), kCFStringTransformStripDiacritics, false) NSLog("\(ens)")
输出如下:
注意:中英文混用转换没有问题,非中文部分不会出现任何变化。
时间: 2024-10-17 00:50:30