2013-07-03 15 views
0

我要尋找的下一個實施格式串號:jstl的:用空格

我有一個字符串:001001001 ,我需要得到的輸出:001 001 001

我檢查了formatNumberDecimalFormat - 它們不能提供這種類型的輸出。 有沒有其他內置方法?

目前,我創造了一些服務器端功能(也就是實際上並不是如此輝煌的解決方案,我認爲):

StringBuffer result = new StringBuffer(""); 

for (int i = 1; i <= 9; i++) { 
    result.append(input.charAt(i - 1)); 
    if (i % 3 == 0) 
     result.append(" "); 
} 

return result.toString(); 

回答

1

我使用下面的方法。 不像nKognito中的例子那樣增加額外空間。

public static String format(String inputUnformatted, int groupSize, String separator) { 
    StringBuilder result = new StringBuilder(inputUnformatted); 

    int i = groupSize; 
    while (i < inputUnformatted.length()) { 
     result.insert(inputUnformatted.length() - i, separator); 
     i += groupSize; 
    } 

    return result.toString(); 
} 
0
public static void main(String[] args) { 
     String input = "001001001"; 
     StringBuilder result = new StringBuilder(); 
     int j = 0; 
     for (int i = 0; i < input.length(); i++) { 
      if (j > 2) { 
       result.append(" "); 
       j = 0; 
      } 

      result.append(input.charAt(i)); 
      j++; 
     } 

     System.out.println(result.toString()); 




    } 

嘗試這段代碼

+0

我的代碼工作正常))我只是想knowcan它通過像DecimalFormater,formatNumber或不標準庫實現... – nKognito