如何在Mac Carbon项目中使用CFLocale / CFNumberFormatter确定货币符号是否应位于数字的左侧或右侧?
我需要与电子表格应用程序连接,该应用程序要求我传递数字,货币符号,货币符号位置和填充,而不是使用CFNumberFormatter创建的CStringRef。
CFLocaleRef currentLocale = CFLocaleCopyCurrent();
CFTypeRef currencySymbol = CFLocaleGetValue (currentLocale, kCFLocaleCurrencySymbol);
为我提供货币符号作为字符串。但我迷失在如何确定货币符号的位置......
答案 0 :(得分:2)
作为一种解决方法,我已经开始创建一个表示货币值的字符串,并通过搜索字符串来确定货币符号的位置,但这对我来说确实很可疑。
CFNumberFormatterRef numberFormatter = CFNumberFormatterCreate(kCFAllocatorDefault, CFLocaleCopyCurrent(), kCFNumberFormatterCurrencyStyle);
double someNumber = 0;
CFStringRef asString = CFNumberFormatterCreateStringWithValue(kCFAllocatorDefault, numberFormatter, kCFNumberDoubleType, &someNumber);
...
随意用卷起的报纸打我,告诉我真正的答案......
答案 1 :(得分:0)
您可以尝试检查从CFNumberFormatterGetFormat
返回的格式字符串。您要¤
搜索\u00A4
的{{1}}。