关于iphone:字符串加倍

String to double

我希望你能帮我解决这个"小问题"。 我想将一个字符串转换为double / float。

1
2
NSString *stringValue = @"1235";
priceLabel.text = [NSString stringWithFormat:@"%d",[stringValue doubleValue]/(double)100.00];

我希望这可以将价格标准设置为12,35,但我得到一些奇怪的长字符串对我来说没有任何意义。

我努力了:

1
2
3
priceLabel.text = [NSString stringWithFormat:@"%d",[stringValue intValue]/(double)100.00];

priceLabel.text = [NSString stringWithFormat:@"%d",[stringValue doubleValue]/100];

但都没有成功。


这是如何将NSString转换为double

1
double myDouble = [myString doubleValue];


您必须使用%f来显示浮点/双精度值。

然后%.2f表示点后2位数

1
2
3
4
5
6
7
8
9
NSString *stringValue = @"1235";

NSString *str = [NSString stringWithFormat:@"%.2f",[stringValue doubleValue]/(double)100.00];

NSLog(@"str : %@

"
,s);

priceLabel.text = str;

OUTPUT:

str:12.35


我认为你的格式字符串错了。 你在哪里:

1
[NSString stringWithFormat:@"%d", ...];

你真的应该:

1
[NSString stringWithFormat:@"%f", ...];

%d用于整数值。 但是你试图显示一个浮点数(%f)。