格式化货币输出

问题描述:

- (void)textFieldDidEndEditing:(UITextField *)textField 

{ 
    if (textfield1) { 

     NSString *txt = self.textfield1.text; 

     double num1 = [txt doubleValue]; 

     double tCost = num1 /100; 

     NSNumberFormatter *numberFormatter = [[NSNumberFormatter alloc] init]; 

     [numberFormatter setNumberStyle: NSNumberFormatterCurrencyStyle]; 


     NSString *numberAsString = [numberFormatter stringFromNumber:[NSNumber numberWithFloat:tCost]]; 

     self.textfield1.text = [NSString stringWithFormat:@"%[email protected]",numberAsString]; 
    } 
} 

这是代码IVE放在一起它格式化文本框的输出转换成货币 IM试图找出这样的输出是怎么做的格式使用的货币,格式化货币输出

,如果有人类型在1625年它的格式为0.1625 目前如果somone类型在50它将其格式为0.50这是正确的,因为它应该是一个计算器,这是一个计算器,这是在美元或pences人民的电价。

  • (无效)textFieldDidEndEditing:(的UITextField *)文本框

{ 如果(textfield1的){

NSString *txt = self.textfield1.text; 

    double num1 = [txt doubleValue]; 


    double tCost = num1/100; 





    NSNumberFormatter *numberFormatter = [[NSNumberFormatter alloc] init]; 

    [numberFormatter setNumberStyle: NSNumberFormatterCurrencyStyle]; 


    // NSString *numberAsString = [numberFormatter stringFromNumber:[NSNumber numberWithFloat:tCost]]; 

    //NSString *numberAsString = [numberFormatter stringFromNumber: 
    //      [NSNumber numberWithDouble:[tCost doubleValue]]]; 



    [numberFormatter setMaximumFractionDigits:3]; 

    [numberFormatter setRoundingMode: NSNumberFormatterRoundUp]; 

    NSString *numberString = [numberFormatter stringFromNumber:[NSNumber numberWithFloat:tCost]]; 


    self.textfield1.text = [NSString stringWithFormat:@"%@",numberString]; 
} 

}

为了让货币格式使用下面的代码:

- (NSString*) getAmountInCurrencyFormatWithValue:(NSString*) valueString { 

    NSNumberFormatter *numberFormatter = [[NSNumberFormatter alloc] init]; 
    [numberFormatter setNumberStyle: NSNumberFormatterCurrencyStyle]; 
    NSString *numberAsString = [numberFormatter stringFromNumber:[NSNumber numberWithDouble:[valueString doubleValue]]]; 

    return numberAsString; 
} 
+0

从我可以看到,不能被纳入我的代码 – 2013-05-09 13:35:25