ios – NSString stringwithformat:填充2个未知长度的字符串

ios – NSString stringwithformat:填充2个未知长度的字符串,第1张

概述我在使用NSString stringWithFormat做某事时遇到了问题…… 问题如下: 首先,我有2个字符串.哪些是货币数量. 问题是,我想用这两个创建1个字符串. 例如: strF = [NSString stringWithFormat:@"First: %@ Second: %@", value1, value2]; 我想知道是否有可能在第一个和第二个之间做出正确的填充.假设第一个 @H_419_2@ 我在使用Nsstring stringWithFormat做某事时遇到了问题……

问题如下:

首先,我有2个字符串.哪些是货币数量.

问题是,我想用这两个创建1个字符串.

例如:

strF = [Nsstring stringWithFormat:@"First: %@   Second: %@",value1,value2];

我想知道是否有可能在第一个和第二个之间做出正确的填充.假设第一个字符串长度不一样…

我想这样做:

First: 10,000.00         Second: 788.00First: 10.00             Second: 788.00First: 0.00              Second: 788.00First: 100.00            Second: 788.00First: 5.00              Second: 788.00
解决方法 修订这是一个更好的方法,使用NSNumberFormatter:

首先创建和配置格式化程序,如下所示:

NSNumberFormatter * formatter = [[ NSNumberFormatter alloc ] init ] ;[ formatter setFormatWIDth:20 ] ;[ formatter setpaddingCharacter:@" " ] ;[ formatter setFormatterBehavior:NSNumberFormatterBehavior10_4 ] ;[ formatter setNumberStyle:NSNumberFormatterDecimalStyle ] ;[ formatter setMinimumFractionDigits:2 ] ;[ formatter setMaximumFractionDigits:2 ] ;

创建格式化程序后,您的代码将变为:

strF = [ Nsstring stringWithFormat:@"First: %@ Second: %@",[ formatter stringFromNumber:value1 ],[ formatter stringFromNumber:value2 ] ] ;

您将获得(千位)分隔符(在当前区域设置中)等.

我会在类方法中创建格式化程序(类似于numberFormatter或dispatch_once块)你甚至可以通过类别将它添加到NSNumberFormatter并具有类似[NSNumberFormatter mySharedFormatter]的东西

您可以使用字段宽度说明符.它这样做:

Nsstring * value1String = ... from NSNumberFormatter to get commas inserted ;[ Nsstring stringWithFormat:@"First: %20s Second: %0.2f",[ value1String UTF8String ],value2 ]

其中“20”是列的宽度. (替换所需的宽度).还有其他选择,比如右对齐等等.请联系man printf获取更多信息.

如果你想添加逗号,NSNumberFormatter应该能够做到这一点.

(实际上,你可能也希望你的小数也排成一行,对吧?你可以尝试%20.2f)

@H_419_2@ 总结

以上是内存溢出为你收集整理的ios – NSString stringwithformat:填充2个未知长度的字符串全部内容,希望文章能够帮你解决ios – NSString stringwithformat:填充2个未知长度的字符串所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/web/1075805.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-05-26
下一篇 2022-05-26

发表评论

登录后才能评论

评论列表(0条)

保存