日期:2014-05-20  浏览次数:20808 次

格式化字符串的问题
有个字符串如 "abc ",现在要在他前面加些字符如0,a等使其位数达到10位,怎么做呢,   我知道有format方法但是自己不会用,请高手执教。

------解决方案--------------------
不会 查看了一个帮助 没有在String类里看到有format 方法 等待回答 学习一下
------解决方案--------------------
String version= "v1.0 "
System.out.println(String.format( "%05d%s ",5,version));
------解决方案--------------------

class Test{
public static void main(String args[]){
String str = "abc ";
String fo = " ";
fo += "%0 " + (10 - str.length()) + "d%s ";
System.out.println(String.format(fo, 0, str));


}
}

自己写了下,发现还是有些问题。
------解决方案--------------------
String str = "adsbds ";
if(str.length() < 10){
for(int i=str.length();i <=10;i++){
str = "a " + str;
}
}
System.out.print(str);

------解决方案--------------------
/**
* 前补0到指定的位数
*
* @param value 要修改的字符数据
* @param maxLen 指定的长度
* @return
*/
public static String addZero(String value, int maxLen) {
int length = maxLen - value.length();
String ret = value;

if (length> 0) {
char[] zero = new char[length];
java.util.Arrays.fill(zero, '0 ');
String sZero = new String(zero);
ret = sZero + ret;
}
return ret;
}
------解决方案--------------------
呵呵,有趣