不确定这是否可行,但对于我的应用程序,我想获得一个描述数字的基于语言环境的字符串。
例如,如果我的数字为10,000,000。
在英语中,我希望用“Ten Million”这个词。然而,在印地语中,它将是一亿卢比。 NSNumberFormatter或NSLocale中是否有任何属性可以帮助我解决这个问题?
我检查了文档(NSNumberFormatter,NSLocale),还没找到我正在寻找的内容。显然我可以编写一些代码来处理这两种情况,但我想要一种适用于任何语言环境的方法。
编辑:感谢leo的回答!这是一小段代码,可以让所有人都开始寻找相同的东西:
NSNumberFormatter formatter = [[NSNumberFormatter alloc] init];
[self.formatter setNumberStyle:NSNumberFormatterSpellOutStyle];
NSLocale *locale = [[NSLocale alloc] initWithLocaleIdentifier:@"hi_hi"];
[self.formatter setLocale:locale];
NSNumber * myNumber = [NSNumber numberWithInt:10000];
self.numberLabel.text = [self.formatter stringFromNumber:myNumber];
答案 0 :(得分:1)
您要找的是NSNumberFormatterSpellOutStyle
样式。
NSString* spelledOutString = [NSNumberFormatter localizedStringFromNumber:@10000000 numberStyle:NSNumberFormatterSpellOutStyle];