java - 如何打印带有零填充的字符串?

标签 java string format printf

我必须打印出一个字符串(例如“01”),数字左侧有零,因此总共打印出 6 个字符。例如,值“01”的字符串应打印为“000001”。

我已经寻找方法来做到这一点,但使用各种形式的 printf 我只能以正确的间距打印它,但空格不被零占据。

这是我尝试过的:

String id = "01";
System.out.printf("%6s", id);

哪些输出:

     1

我读到在 6 之前和 % 之后添加 0 应该在我想要的位置添加零,但它会引发运行时错误。

谢谢, 泰勒

最佳答案

将字符串转换为整数,然后进行格式化。

String id = "01";
int i = Integer.parseInt(id);
System.out.printf("%06d", i);

输出:

000001

关于java - 如何打印带有零填充的字符串?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28311129/

相关文章:

Java If-else结构优化

string - 在 COBOL 中连接未知长度的字符串

python - 带有转义字符的 json.loads

php - 标准时间的日期时间格式方法(laravel 5.3)

具有字符串连接和延续的 Python str.format

android - 你如何格式化这个 URL,它给我 "Illegal character in path at index 70"?

java - 每次更改时 Eclipse 自动生成 serialVersionUID

java - SpringBoot jUnit 未加载 application-dev.xml

java - 检测/控制过程

c# - 如何使用 LINQ Contains(string[]) 而不是 Contains(string)