Как определить, находится ли символ валюты слева или справа от числа в MacOS - PullRequest
1 голос
/ 13 октября 2008

Как определить, должен ли символ валюты находиться слева или справа от числа, используя CFLocale / CFNumberFormatter в проекте Mac Carbon?

Мне нужно взаимодействовать с приложением электронных таблиц, которое требует, чтобы я передавал число, символ валюты, расположение символа валюты и отступы вместо CStringRef, созданного с помощью CFNumberFormatter.

CFLocaleRef currentLocale = CFLocaleCopyCurrent();
CFTypeRef currencySymbol = CFLocaleGetValue (currentLocale, kCFLocaleCurrencySymbol);

предоставляет мне символ валюты в виде строки. Но я заблудился от того, как определить положение символа валюты ...

Ответы [ 2 ]

2 голосов
/ 14 октября 2008

В качестве обходного пути я начал создавать строку, представляющую значение валюты и определяющую положение символа валюты, выполняя поиск в строке, но это, безусловно, выглядит подозрительно.

    CFNumberFormatterRef numberFormatter = CFNumberFormatterCreate(kCFAllocatorDefault, CFLocaleCopyCurrent(), kCFNumberFormatterCurrencyStyle);
    double someNumber = 0;
    CFStringRef asString = CFNumberFormatterCreateStringWithValue(kCFAllocatorDefault, numberFormatter, kCFNumberDoubleType, &someNumber);

...

Не стесняйтесь ударить меня свернутой газетой и скажите мне реальный ответ ...

0 голосов
/ 26 октября 2008

Вы можете попробовать проверить строку формата, возвращенную из CFNumberFormatterGetFormat. Это выглядит как , который вы хотите найти ¤, что \u00A4.

...