我正在从Ruby脚本输出一组编号文件。这些数字来自计数器的递增,但是为了使它们在目录中很好地排序,我想在文件名中使用前导零。换句话说
文件001
而不是
文件1
在将数字转换为字符串时,是否有一种简单的方法来添加前导零?(我知道我能做到“如果少于10…如果少于100”)
将%运算符与字符串一起使用:
irb(主):001:0>;%03d“%5”
=>;"005"
左侧是printf格式字符串,右侧可以是值列表,因此可以执行以下操作:
irb(主):002:0>;filename=“%s/%s.%04d.txt”%[“dirname”,“filename”,23]
=>;“dirname/filename.0023.txt”
这是一份printf格式的备忘单,您可能会发现它对形成格式字符串很有用。printf格式最初来自于C函数printf,但类似的格式化函数在perl、ruby、python、java、php等中都可用