如何用字符串在左边加零.总体安排



我尝试使用String。使用前导零格式化字符串

Dim formatstring As String = ("{0,0}{1}{2,0:YYYY-MM-DD}{3}{4,0:00000}{5}{6,0:00000}{7}{8}{9}{10}{11}{12}")

如果有{4,0:00000},则左侧为零实例01400014

如果有{6,0:00000},左边也将为零实例54700547

但它并没有发生——仍然显示为014和547

为了实现您想要的目标,在第4个和第6个索引中传递的对象需要支持IFormattable接口。来自文档:

如果指定formatString,则格式项引用的参数必须实现IFormattable接口。支持格式字符串的类型包括:

  • 所有整型和浮点型。(请参见标准数字格式字符串和自定义数字格式字符串。)
  • DateTime和DateTimeOffset。(请参见标准日期和时间格式字符串以及自定义日期和时间格式化字符串。)
  • 所有枚举类型。(请参见枚举格式字符串。)
  • TimeSpan值。(请参见标准时间跨度格式字符串和自定义时间跨度格式串。)
  • GUID。(请参阅Guid.ToString(String)方法。)

您有一个值014,而不是简单的14,这意味着您所拥有的已经是一个字符串。String类型不实现IFormatable。要实现这一点,您需要首先将字符串解析为整数或类似类型。

最新更新