0

这是我的字符串,我想将变量浮点数放在这个字符串中:

我想传递浮点数据类型的值。

例如..%.1f %.2f 我想在 iPhone sdk 中动态传递 1 和 2 值我使用这个代码:-----

NSString *string=[NSString stringWithFormat:@"%.%if",[[arrayvalue objectAtIndex:0] intValue],[textField2.text floatValue]];

但它只打印:-- .if

4

3 回答 3

1

你不能嵌套格式字符串,你可以这样做:

int value = [[arrayvalue objectAtIndex:0] intValue];
NSString *string = [@"%." stringByAppendingFormat:@"%if", value];
string = [NSString stringWithFormat:string, [textField2.text floatValue]];

这是代码完全未经测试。

于 2012-08-03T12:18:22.317 回答
0

您忘记为 '%' 这个符号添加转义字符。试试下面的代码它会工作。

int i=2;
NSString *output= [NSString stringWithFormat:@"%%.%if",i];

如果你想显示两个值,那么你可以在下面尝试。

int i=2;
float x=3.5;
NSString *output= [NSString stringWithFormat:@"%%.%if  %%.%ff",i,x];

请根据需要进行修改。这只是为了您的想法如何使用它。

于 2012-08-03T12:20:51.730 回答
0

NSMutableString 可以添加另一个字符串或格式。

// array must have first object pass 1st parameter
NSMutableString *mutableString = [[NSString alloc] init];
[str appendFormat:"%d", [array objectAtIndex:0].intValue];

// array have second object then pass 2nd parameter
if (2 <= array.count)
   [mutableString appendFormat:"%f", [array objectAtIndex:0].floatValue]];

NSLog("%@", mutableString);
于 2012-08-03T12:26:59.583 回答