这是我现在如何获取货币符号的代码:
NSLocale *lcl = [[[NSLocale alloc] initWithLocaleIdentifier:@"au_AU"] autorelease];
NSNumberFormatter *fmtr = [[[NSNumberFormatter alloc] init] autorelease];
[fmtr setNumberStyle:NSNumberFormatterCurrencyStyle];
[fmtr setLocale:lcl];
NSLog( @"%@", [lcl displayNameForKey:NSLocaleCurrencySymbol value:@"AUD"] );
NSLog( @"%@", [fmtr currencySymbol] );
两个 NSLog 都返回“AU$”。正如我从 Apple 开发文档中了解到的那样,每种货币至少有两个货币符号(尽管这些符号可能相同) - 本地(在一个国家/地区内使用。例如,$ 用于澳大利亚)和国际(AU$澳大利亚)。所以,问题是如何获得本地货币符号。有什么想法吗?
提前致谢。
NSNumberFormatter *currencyFormatter = [[[NSNumberFormatter alloc] init] autorelease];
[currencyFormatter setLocale:[NSLocale currentLocale]];
[currencyFormatter setMaximumFractionDigits:2];
[currencyFormatter setMinimumFractionDigits:2];
[currencyFormatter setAlwaysShowsDecimalSeparator:YES];
[currencyFormatter setNumberStyle:NSNumberFormatterCurrencyStyle];
NSNumber *someAmount = [NSNumber numberWithFloat:5.00];
NSString *string = [currencyFormatter stringFromNumber:someAmount];
您将收到美国 5.00 美元、日本 5.00 日元、欧洲 5.00 欧元等。
我是一名优秀的程序员,十分优秀!