ГлавнаяСтатьиПрограммирование → форматирование чисел в java
форматирование чисел в java E-mail
User Rating: / 0
PoorBest 
Written by xternalx   
Tuesday, 18 May 2010 19:35

Недавно я познакомился с языком java, и в один прекрасный момент мне потребовалось выводить числа с ведущими нулями. Допустим, есть графа в документе, в которой должно быть число из 8 цифр. Т.е., если у нас дано число 12, это должно выглядеть как 00000012, и так далее ;)

Надо сказать, раньше мне не приходилось делать такого ни на каких других языках программирования. Для форматирования дат использовались обычные символы форматирования дат, а здесь...

В итоге все оказалось предельно просто. Достаточно было воспользоваться методом format класса String. Получается сдедущее:


System.out.println(String.format("%08d",12));



в результате этого, как уже можно было понять получится строка 00000012.

Как видно, все очень просто. Но когда я этого еще не знал, я решил написать свою функцию:

public String FormatDocumentNumber(String docNum)
 {
 int len = docNum.length();
 int lenDiff = len - Integer.toString(this.document_num).length();
 char[] arr = docNum.toCharArray();
 char[] number = Integer.toString(this.document_num).toCharArray();

for(int i=0; i<len; i++)
{
 arr[i] = '0';
 }

for(int i=0; i<number.length; i++ )
{
 arr[lenDiff+i] = number[i];
 }

 StringBuffer sb = new StringBuffer();
for(int i=0; i<len; i++)
{
 sb.append(arr[i]);
 }

 return sb.toString();
 }

 

Last Updated on Tuesday, 18 May 2010 19:57
 

Add comment


Security code
Refresh