如何从NSDecimal获取字符串表示没有任何格式?

Ano*_*ser 4 iphone macos cocoa cocoa-touch

例如,我有一个NSDecimal myDecimal.让我们说它代表"-1234567.89"之类的东西

如何在没有任何美化/格式化的情况下获得该十进制的干净字符串表示?没有本地化?浮点符号=.只休息0到9之间的数字,最后是 - 如果它是否定的?我需要严格的技术方式.因此,像123456789876554432123456789.2231这样的数字应该看起来不像格式化的"123,456,789,876,554,432,123,456,789.2231".你明白了吗?我不想要任何格式化.我现在正在努力做到这一点,但我发现的一切都与格式化有关.那你们怎么做到的?

Bar*_*ark 8

我不相信存在"干净"字符串表示这样的事情,而与指定语言环境无关.正如许多欧洲人所指出的那样,123.45应写为123,45(使用,而不是.为小数位).NSDecimalString()(可以在基础函数参考中找到)作为第二个参数采用语言环境规范.如果某些语言环境使用您所需的格式,请将该语言环境作为第二个参数传递(有关语言环境的详细信息,请参阅" 国际化指南").

或者,您可以使用a NSNumberFormatter,这将使您更好地控制字符串表示.