java字符串 刪除指定字符的那些事

需求如下:

1.算出2周以前的時間,以正常日期格式返回

2.如果月份和日期前面有0需要去掉返回結果,什麼意思呢,比如:2017-08-15  就需要顯示2017-8-15。

Calendar calendar = Calendar.getInstance();
calendar.add(Calendar.DATE, -14);  //倒退2周,所以是-14
Date date = calendar.getTime();
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
String time = sdf.format(date);//這裏輸出的日期就是2周前的日期,輸出爲2017-08-16


第一種方法:

String index = "";
for(int i = 0; i< time.length(); i++){
   if ((i == 5 && time.charAt(i) == '0') | (i == 8 && time.charAt(i) == '0')){
       index += "";
   } else {
       index += time.charAt(i);
   }
}
system.out.printn(index);


第二種方法(最簡單的方法,使用StringBuffer就Ok:

StringBuffer buffer = new StringBuffer(time);
if (buffer.charAt(5) == '0') {
    buffer.deleteCharAt(5);
}
if (buffer.charAt(7) == '0') {
    buffer.deleteCharAt(7);
}
System.out.println(buffer.toString());

 

 

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章