[英]NSNumberFormatter setPositiveFormat
我正在嘗試使用NSNumberFormatter
,我想使用: -setPositiveFormat
來定制格式。
我想將121212.12
轉換為12.12E+04
我必須使用9位數字和2位小數
我的目標不公開:
NSNumberFormatter *formatter = [[NSNumberFormatter alloc] init];
[formatter setFormatterBehavior:NSFoundationVersionNumber10_4]; // iOS supports only the modern 10.4+ behavior
[formatter setNumberStyle:NSNumberFormatterScientificStyle];
[formatter setMinimumFractionDigits:numberOfDecimalDigits];
[formatter setPositiveFormat:@"#.#E+00"];
[formatter setFormatWidth:9]; // set width
[formatter setPaddingCharacter:@"x"]; // choice padding Char
NSString *convertNumber = [formatter stringFromNumber:number];
return convertNumber;
但這不起作用...
自定義格式,例如:
[formatter setPositiveFormat:@"#.#E+00]; // my string is from my intuition ....
這是解決方案嗎?
第二個問題:我不明白#
是什么意思? 還在字符串中00
嗎? (我在文檔中找不到答案)
謝謝 !
我了解您希望格式化后的號碼具有以下確切格式:(2位數字)。(2位數字)E +(2位數字)
您可以按以下方式配置NSNumberFormatter
:
NSNumberFormatter *formatter = [[NSNumberFormatter alloc] init];
[formatter setPositiveFormat:@"00.00E+00"];
NSNumber *number = [NSNumber numberWithFloat:121212.12];
NSString *convertNumber = [formatter stringFromNumber:number];
至於0
和#
的含義看看這個鏈接 。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.