【问题标题】:c# - Convert number in string to have certain number of digitsc# - 将字符串中的数字转换为具有一定位数
【发布时间】:2018-06-20 11:02:28
【问题描述】:

我有一个字符串格式的数字。这个数字将在 1-6 位之间,我需要将其转换为左侧填充零,以便始终为 6 位数字。还有比这更有效的方法吗?

Int32.Parse("5").ToString("D6")

转换为 int 感觉有点不必要。

【问题讨论】:

  • 您所说的更高效究竟是什么意思?
  • 我想“000005”是不可能的?
  • @MongZhu 跳过转换为 int 并返回,只是按照接受的答案格式化字符串。

标签: c# string formatting type-conversion


【解决方案1】:

你可以使用String.PadLeft:

string result = number.PadLeft(6, '0');

如果数字可能是负数,这不起作用,您需要使用int.Parse 方法。

【讨论】:

    【解决方案2】:

    没必要

    string result = "5".PadLeft(6,'0');
    

    【讨论】:

      【解决方案3】:

      string someText = "test 5 rate";

      someText = Regex.Replace(someText, @"\d+", n => n.Value.PadLeft(5, '0'));

      【讨论】:

        猜你喜欢
        • 2023-03-19
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2023-04-02
        • 1970-01-01
        • 1970-01-01
        • 2022-12-09
        • 2021-10-06
        相关资源
        最近更新 更多