Sprintf equivalent in Mathematica?

Viewed 5809

I don't know why Wikipedia lists Mathematica as a programming language with printf. I just couldn't find the equivalent in Mathematica.

My specific task is to process a list of data files with padded numbers, which I used to do it in bash with

fn=$(printf "filename_%05d" $n)

The closest function I found in Mathematica is PaddedForm. And after some trial and error, I got it with

"filename_" <> PaddedForm[ Round@#, 4, NumberPadding -> {"0", ""} ]&

It is very odd that I have to use the number 4 to get the result similar to what I get from "%05d". I don't understand this behavior at all. Can someone explain it to me?

And is it the best way to achieve what I used to in bash?

5 Answers
Related