2012-07-26 7 views
7

मैं जानना चाहता हूं कि प्रत्येक अंक को स्थानीयकृत किए बिना आईफोन ऐप्स के अंदर अरबी संख्याएं कैसे प्रदर्शित करें।प्रत्येक अंक को स्थानीयकृत किए बिना आईफोन ऐप्स के अंदर अरबी संख्याओं को प्रदर्शित करने के लिए कैसे करें

उदाहरण के लिए, मैं कोड जिसका मूल्य में एक पूर्णांक है = 123

मैं अपने दम पर प्रत्येक अंक स्थानीय बनाना और स्थानीयकरण के रूप में उपयोग करने के लिए अरबी एप्लिकेशन को बलपूर्वक किए बिना 123 के रूप में यह प्रदर्शित करना चाहते हैं उपयोगकर्ता की चुनी हुई भाषा की परवाह किए बिना भाषा

क्योंकि मैं सभी अनुप्रयोग है कि गतिशील रूप से परिवर्तित में कई नंबर हैं, तो मैं एक सामान्य स्मार्ट समाधान

+2

तुम्हारा मतलब है "पूर्वी अरबी अंकों", के रूप में करने के लिए "पश्चिमी अरबी अंकों का विरोध किया "। – Hassan

उत्तर

22
NSDecimalNumber *someNumber = [NSDecimalNumber decimalNumberWithString:@"123"]; 
NSNumberFormatter *formatter = [[NSNumberFormatter alloc] init]; 
NSLocale *arLocale = [[[NSLocale alloc] initWithLocaleIdentifier:@"ar"] autorelease]; 
[formatter setLocale:arLocale]; 
NSLog(@"%@", [formatter stringFromNumber:someNumber]); // Prints in Arabic 
[formatter setLocale:[NSLocale currentLocale]]; 
NSLog(@"%@", [formatter stringFromNumber:someNumber]); // Prints in Current Locale 
[formatter release]; 
+0

धन्यवाद, यह काम किया! – Evronia

+0

धन्यवाद, यह मुझे बहुत समय बचाया। –

+0

संख्याओं के साथ ठीक काम करता है लेकिन आपके पास 12.75 जैसे फ्लोट वैल्यू हैं, यह आपको केवल 12 लौटाएगा ... किसी भी तरह समाधान के लिए मेरा वोटअप। – Ans

1

जरूरत मामले में आप चल बिन्दु है जो नंबर आप NSNumberFormatter[formatter setNumberStyle:NSNumberFormatterDecimalStyle]; initialing के बाद इस लाइन को जोड़ना होगा इसलिए उपरोक्त कोड के संशोधन के रूप में पालन करेगा

NSString *test = [NSString stringWithFormat:@"%lu", fileSizeEvet]; 
// NSString *test = [NSString stringWithFormat:@"%f", (double)folderSize/1024/2014]; 
NSDecimalNumber *someNumber = [NSDecimalNumber decimalNumberWithString:test]; 
NSNumberFormatter *formatter = [[NSNumberFormatter alloc] init]; 
[formatter setNumberStyle:NSNumberFormatterDecimalStyle]; 
NSLocale *gbLocale = [[NSLocale alloc] initWithLocaleIdentifier:@"ar"]; 

[formatter setLocale:gbLocale]; 
float myInt = [someNumber floatValue]/1024/1024; 
// NSLog(@"%@", [formatter stringFromNumber:[NSNumber numberWithFloat:myInt]]); 
// NSLog(@"%@", [formatter stringFromNumber:someNumber]); // Prints in Arabic 
NSString *folderSizeInArabic = [formatter stringFromNumber:[NSNumber numberWithFloat:myInt]]; 
fileSizeLabel.text = [NSString stringWithFormat:@" قه‌باره‌ی فایل: %@ مب", folderSizeInArabic]; 

अधिक जानकारी यात्रा के लिए this link

संबंधित मुद्दे

 संबंधित मुद्दे