How to write a value with zeros before the value in matlab?
2 visualizzazioni (ultimi 30 giorni)
Mostra commenti meno recenti
Farshid Daryabor
il 14 Nov 2016
Commentato: Farshid Daryabor
il 14 Nov 2016
Dear,
how to write/print a value with zeros before the value by the sprintf function, e.g., writing/printing the following form;
test_007120128O.nc
data_013587626O.nc
Regards,
0 Commenti
Risposta accettata
Adam
il 14 Nov 2016
Modificato: Adam
il 14 Nov 2016
sprintf( '%05.3d', 20 )
for example will pad leading 0s upto the number you specify (5 in this case, including the 20, so 3 additional 0s), but to get what you want depends what exactly you are starting with. If you always want 9 digits then
sprintf( '%09d', yourNumber )
should work
doc sprintf
covers this if you click on the 'formatSpec' hyperlink.
2 Commenti
Adam
il 14 Nov 2016
Modificato: Adam
il 14 Nov 2016
In response to what you posted below, the syntax you posted doesn't seem to work at all, to even give what you show, but this works for me:
file=sprintf('%s%s_%09dO.nc', directory,'test',mynumber)
It is the rest of your sprintf format specification and input arguments that appear to not be quite right. For a start you specify 4 distinct fields, but only supply 3 inputs. The final %s that you have should not be there and mynumber should not be in a string.
Più risposte (1)
Farshid Daryabor
il 14 Nov 2016
1 Commento
Adam
il 14 Nov 2016
Please add as a comment to an answer rather than a new answer as it is less confusing.
Vedere anche
Categorie
Scopri di più su Environment and Settings in Help Center e File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!