저는 전 세계에서 사용할 통화 제거 기능을 구축해 왔습니다. 그러나 버그가 밝혀지면서 이유가 확실하지 않습니다. 내가 1,000.00에 전달하면Obj-C, 통화 가치를 유효한 숫자로 발행하십시오.
+(double)removeFormatPrice:(NSString *)strPrice {
NSNumberFormatter *currencyFormatter = [[[NSNumberFormatter alloc] init]
autorelease];
[currencyFormatter setNumberStyle:NSNumberFormatterCurrencyStyle];
NSNumber* number = [currencyFormatter numberFromString:strPrice];
NSNumberFormatter *formatter = [[[NSNumberFormatter alloc] init]
autorelease];
NSMutableString *mstring = [NSMutableString stringWithString:strPrice];
NSRange wholeShebang = NSMakeRange(0, [mstring length]);
[mstring replaceOccurrencesOfString: [formatter decimalSeparator]
withString: @"."
options: 0
range: wholeShebang];
double newPrice = [mstring doubleValue];
if (number == nil) {
return newPrice;
} else {
return [number doubleValue];
}
}
는 그것이 것을 단지를해야 할 점 (기간/마침표)를 대체 할뿐만 아니라, 쉼표를 대체합니다. Newprice이
당신이 얻고 싶은 결과. 1,000.01의 예상 값은 얼마입니까? 500.25? – sch
나는 1,000.00 (영국 숫자 형식)을 통과하고 1000.00 또는 1000을 얻는다. 순간에 나는 1을 얻는다. – Jules