[英]Ruby: leading zeros with already formatted string
我不明白為什么會這樣:
s = "000301"
"%06d" % s ====> "000193"
sprintf("%06d", s) ====> "000193"
因為它被解釋為八進制數。
在irb中嘗試:
> 0301
=> 193
但是當你寫:
> 301
=> 301
如果要使其工作,請嘗試使用String#to_i
將其轉換為整數:
"%06d" % s.to_i
sprintf("%06d", s.to_i)
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.