9

我正在尝试向数字添加零填充。我做了一些搜索,但找不到明显的方法来做到这一点。我错过了什么吗?

4

3 回答 3

15

Dart 1.3引入了String.padLeftString.padRight你可以使用:

String intToString(int i, {int pad 0}) => i.toString().padLeft(pad, '0');
于 2014-04-14T21:08:15.223 回答
12

您可以使用字符串函数 .padLeft(Int width, [String = ' '])

https://api.dartlang.org/apidocs/channels/dev/dartdoc-viewer/dart-core.String#id_padLeft

int i = 2;
print(i.toString().padLeft(2, "0"));

结果:02

于 2014-09-07T00:21:47.670 回答
5

我认为您没有遗漏任何东西,现在严重缺乏格式化功能。我认为你能做的最好的事情是:

String intToString(int i, {int pad: 0}) {
  var str = i.toString();
  var paddingToAdd = pad - str.length;
  return (paddingToAdd > 0) 
      ? "${new List.filled(paddingToAdd, '0').join('')}$i" : str;
}

显然,采用格式字符串的东西会更好。功能要求?

于 2013-03-04T03:49:42.993 回答