2016-05-03 62 views
0

我將爲使用子字符串函數準備字符串,並且我需要始終具有4個字符。在stackoverflow我發現這樣的代碼,但它只適用於數字。String.format()用於字符串和Java中的數字

writeHead = String.format("%04d", writeHead); 

但在我的情況下,我需要爲文本+數字做同樣的事情。 12A - > 012A

String head = "12a"; 
String writeHead = String.format("%04d", head);//doesnt work 
//need 012a as String 
+0

你需要領先的零所有時間? – mmuzahid

回答

1

如果文本/數字模式固定(即所有數字以字母a結尾?),String.format不好。 一個快速和骯髒的左填充與零:

String head="12a";  
String writeHead = "0000"+head; 
writeHead=writeHead.substring(writeHead.length()-4); 
+0

謝謝,我應該自己打這個想法 – skajar

0

這樣一個簡單的事情會做

String head = "12a"; 
while(head.length < 4){ 
    head += "0"+head; 
} 

只是檢查的長度和附加

0
int head = 12; 
String writeheader = String.format("0%da", head); 

字符串頭= 12A; String writeHeader = String.format(「0%s」,head);

相關問題