字符串到字符串格式
本文关键字:字符串 格式 | 更新日期: 2023-09-27 18:35:04
我有一个包含数字的字符串,我想以这种数字格式显示此字符串:#,##0
所以我尝试添加到这个字符串.ToString("#,##0")
但编译器说
最佳重载方法匹配 '字符串。ToString(System.IFormatProvider(' 有一些无效的参数。
知道如何在不先将此字符串转换为int
的情况下做到这一点吗?
当您只需要格式化单个数字时,例如整数或长整型。在这种情况下,您不需要使用字符串。Format.您可以只使用 ToString 虚拟方法。这减少了一些开销。但不能直接使用 ToString 设置字符串的格式。
我认为这
是不可能的,除非你想手动处理字符串。如果尝试String.Format("{0:#,##0}", "1000000")
则输出1000000
。对我来说,这是有道理的。虽然你可以说"这个字符串一直包含数字",但这不是对语言正常做出的安全假设。
最好的办法是执行以下操作:
String.Format("{0:#,##0}", int.Parse(input));
如果您确定它将始终是可铸造的整数。
请先将字符串输入转换为整数,然后尝试格式化字符串。请参阅以下示例:
string test = "12345";
Console.WriteLine("{0}", int.Parse(test).ToString("#,##0"));