2013-01-04 96 views
2

如何將2/3/2013格式更改爲02/03/2013 (dd/mm/yyyy)datepicker和日曆中的日期格式更改

Calendar c1 = Calendar.getInstance(); 
    year = c1.get(Calendar.YEAR); 
    month = c1.get(Calendar.MONTH); 
    day = c1.get(Calendar.DAY_OF_MONTH); 
// formatter = new SimpleDateFormat("dd/MM/yyyy"); 


    public void onDateSet(DatePicker view, int selectedYear, 
      int selectedMonth, int selectedDay) { 
      year = selectedYear; 
      month = selectedMonth; 
      day = selectedDay; 
      // set selected date into textview. 
      searchText.setText(new StringBuilder().append(month + 1).append("/").append(day).append("/").append(year).append(" ")); 
      Log.i("DatePickerDialog","DatePickerDialog"); 
      dpResult = (DatePicker) findViewById(R.id.dpResult); 
      // set selected date into datepicker also. 
      dpResult.init(year, month, day, null); 
      user.setSearchEntityType("ByDate"); 
     }  
    }; 

電流輸出:

1/2/2013 
d/m/y 

尋找:

01/02/2013 
dd/mm/yyyy 

回答

6
@Override 
public void onDateSet(DatePicker view, int year, int monthOfYear, 
     int dayOfMonth) { 

    int month = monthOfYear + 1; 
    String formattedMonth = "" + month; 
    String formattedDayOfMonth = "" + dayOfMonth; 

    if(month < 10){ 

     formattedMonth = "0" + month; 
    } 
    if(dayOfMonth < 10){ 

     formattedDayOfMonth = "0" + dayOfMonth; 
    } 
    searchText.setText(formattedDayOfMonth + "/" + formattedMonth + "/" + year); 
} 
0

簡單,添加如下條件:

if (month<10) 
    month='0'+month; 
if (day<10) 
    day='0'+day; 
+0

它以這種方式顯示[\t方法parseInt函數(INT)是未定義的類型新DatePickerDialog.OnDateSetListener(){}] – raki

+0

看到我的編輯答案... –

+0

我在相同的格式一樣。它將輸出爲49/51/2013任何事情我都改變searchText.setText(新的StringBuilder()。append(月+ 1).append(「/」)。append(day).append(「/」) .append(year).append(「」)); – raki

4

使用DateFormat類。做這樣的事情:

Calendar cal = Calendar.instance(); 
cal.set(year, month, day); 
CharSequence output = DateFormat.format("MM/dd/yyyy", cal); 

查看here的更多示例。

1

使用此代碼可獲取像dd/mm/yy這樣的格式。

int month = monthOfYear + 1; 
String formattedMonth = "" + month; 
String formattedDayOfMonth = "" + dayOfMonth; 
String formattedYear=String.valueOf(year); 

if(month < 10){ 

    formattedMonth = "0" + month; 
} 
if(dayOfMonth < 10){ 

    formattedDayOfMonth = "0" + dayOfMonth; 
} 

formattedYear=formattedYear.substring(formattedYear.length()-2); 
String date=formattedDayOfMonth + "/" + formattedMonth + "/" + formattedYear; 
mEDDate.setText(date); 
相關問題