我想返回當前時間爲字符串,但前導零。我嘗試這樣做:Erlang中前導零的格式
{{Year, Month, Day}, {Hour, Minute, Second}} = erlang:localtime().
DateAsString = io_lib:format("~2.10.0B~2.10.0B~4.10.0B~2.10.0B~2.10.0B~2.10.0B",
[Month, Day, Year, Hour, Minute, Second]).
但是,如果一些組件是一個數字,返回的字符串是:
[["0",57],"29","2011","17","33","34"]
的當月9
打印爲["0",57]
。
請幫助。
謝謝。
謝謝。展平列表將返回正確的字符串。我使用當前時間來建立一個文件名。我只是想知道這個'['0','57]'從哪裏來?再次感謝。 –
57是「9」的ASCII碼。拼合只是強制格式化的返回值爲單個字符串,因此整個事物被解釋爲ASCII。請記住,在Erlang中,普通字符串只是整數數組。 'erl'環境必須猜測你想要給定一個給定的整數數組。它恰好在你的案例中猜到了錯誤,但實際上,它也在做同樣的事情。 –
太好了。感謝您的解釋。 –