字符串到字符串格式

本文关键字:字符串 格式 | 更新日期: 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"));