2010-04-23 10 views
20

में विभिन्न देश की "मुद्रा दशमलव स्थान चौड़ाई" मैं NSLocaleCurrencySymbol के बारे में पढ़ता हूं, लेकिन मुझे देश की मुद्रा में उपयोग की जाने वाली "दशमलव स्थानों की संख्या" निर्धारित करने के लिए उपयोग किया जाने वाला चर कहाँ मिलेगा?आईफोन-एसडीके

आईई। संयुक्त राज्य अमेरिका में, 2 दशमलव स्थानों के साथ लिखी गई डॉलर की मात्रा देखना आम है: $ 1.23

कई अन्य देशों के बारे में क्या?

उत्तर

26

ऐसे कई अन्य देश हैं जो दशमलव स्थानों की एक अलग संख्या प्रदर्शित करते हैं। 2 बहुमत है, 0 (उनकी मुद्रा में कोई सेंट नहीं, उदाहरण के लिए, जापान) सबसे बड़ा अल्पसंख्यक है, 3 केवल कुछ ही में उपयोग किया जाता है। कोई अन्य नंबर जो मुझे पता है। जब विनिमय दर उद्धृत की जाती है, तो आमतौर पर अधिक दशमलव का उपयोग किया जाता है। 0 और 3 वाली मुद्राएं जिन्हें मैं जानता हूं नीचे दिखाए गए हैं। http://www.iso.org/iso/support/currency_codes_list-1.htmhttp://en.wikipedia.org/wiki/ISO_4217 या http://www.currency-iso.org/en/home/tables/table-a1.html:

ISO मुद्रा कोड में पाया जा सकता।

ISO Code   Currency Decimal places 

ADP Andoran Peseta 0 
AFA Afghani Afghani 0 
BEF Belgian franc 0 
BHD Bahraini dinar 3 
BIF Burundi franc 0 
BYB Belorussian rubel (old) 0 
BYR Belorussian rubel (new) 0 
CLP Chilean peso 0 
COP Colombian peso 0 
DJF Djibouti franc 0 
ECS Ecuadorian sucre 0 
ESP Spanish peseta 0 
GNF Guinea franc 0 
GRD Greek drachma 0 
HUF Hungarian forint 0 
IDR Indonesian rupiah 0 
IQD Iraqui dinar 3 
ITL Italian lira 0 
JOD Jordan dinar 3 
JPY Japanese yen 0 
KMF Comoros franc 0 
KRW South Korean won 0 
KWD Kuwaiti dinar 3 
LAK Laos new kip 0 
LUF Luxembourg franc 0 
LYD Libyan dinar 3 
MGF Madagascan franc 0 
MZM Mozambique metical 0 
OMR Omani rial 3 
PTE Portugese escudo 0 
PYG Paraguay guarani 0 
ROL Roumanian Lei 0 
RWF Rwanda franc 0 
TJR Tadzhikistani rubel 0 
TMM Turkmenistani manat 0 
TND Tunesian dinar 3 
TPE Timor escudo 0 
TRL Turkish lira 0 
TWD New Taiwan dollar 0 
UGX Uganda shilling 0 
VND Vietnamese dong 0 
VUV Vanuata vatu 0 
XAF CFA Franc BEAC 0 
XOF CFA Franc BCEAO 0 
XPF CFP Franc 0 
+0

प्रदान किया गया लिंक अब मान्य नहीं है, मुझे संदेह है कि यह होना था: http://www.iso.org/iso/home/store/catalogue_tc/catalogue_detail.htm?csnumber=46121 लेकिन यह सिर्फ एक पृष्ठ को इंगित करता है जहां आप पूर्ण कल्पना खरीद सकते हैं। विकिपीडिया यहां सूची बनाए रखता है: http://en.wikipedia.org/wiki/ISO_4217 – knightpfhor

+0

'DECIMAL (1 9, 4)' ** एक लोकप्रिय विकल्प है ** जांचें [यह] (http://stackoverflow.com/questions/224462/भंडारण-धन-में-एक-दशमलव-कॉलम-क्या-परिशुद्धता-और-पैमाने) भी जांचें [यहां] (http://www.thefinancials.com/Default.aspx?SubSectionID=curformat) विश्व मुद्रा प्रारूप यह तय करने के लिए कि कितने दशमलव स्थान उपयोग करने के लिए, उम्मीद मदद करता है। – stom

22

iOS 6 में (और संभवतः पहले) आप minimumFractionDigits एक NSNumberFormatter की संपत्ति सही स्थान के लिए सेट से एक मुद्रा की दशमलव स्थान के बाद अंकों की संख्या पता कर सकते हैं:

 
void (^currency_test)(NSString *) = ^(NSString *locale) { 
    NSNumberFormatter *formatter = [[NSNumberFormatter alloc] init]; 
    [formatter setLocale:[[NSLocale alloc] initWithLocaleIdentifier:locale]]; 
    [formatter setNumberStyle:NSNumberFormatterCurrencyStyle]; 
    NSLog(@"%@: %@ (minimumFractionDigits = %d)", locale, [formatter stringFromNumber:@(1000)], [formatter minimumFractionDigits]); 
}; 

currency_test(@"en_US"); 
currency_test(@"nl_NL"); 
currency_test(@"de_DE"); 
currency_test(@"fr_FR"); 
currency_test(@"jp_JP"); 
currency_test(@"ar_JO"); 

en_US: $1,000.00 (minimumFractionDigits = 2) 
nl_NL: € 1.000,00 (minimumFractionDigits = 2) 
de_DE: 1.000,00 € (minimumFractionDigits = 2) 
jp_JP: ¥ 1000 (minimumFractionDigits = 0) 
ar_JO: ١٠٠٠٫٠٠٠ د.أ.‏ (minimumFractionDigits = 3) 

ध्यान दें कि आप कॉल करना होगा [फ़ॉर्मेटर setNumberStyle: NSNumberFormatterCurrencyStyle] minimumFractionDigits संपत्ति सही मान के साथ से भर जाता है से पहले (है कि एक ही मुझे आधे घंटे लग गए हमारे काम करने के लिए!)

+2

मुझे विश्वास नहीं है कि इस उत्तर में अधिक वोट नहीं हैं और यह स्वीकार्य उत्तर नहीं है क्योंकि यह केवल एकमात्र ऐसा है जो वास्तव में ओपीएस प्रश्न का उत्तर देता है। आपने मुझे घंटों के माध्यम से परीक्षण और त्रुटि और ट्रेलिंग के घंटे बचाए हैं। उन मूल्यवान नगेट्स में से एक जो केवल स्टैक ओवरफ्लो प्रदान कर सकता है। धन्यवाद! – mluisbrown