[英]Format date from datepicker with dateformat
我得到了這個editText,當您單擊它時,它會打開一個datepickerdialog,所以我選擇了一個日期,我想在edittext中顯示它,但是我想格式化日期語言環境。 我希望它對美國用戶自動為mm / dd / yyyy,對於其他人則自動為dd / mm / yyyy。
我不想使用simpledateformat,我想使用dateformat。
editDate.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
//To show current date in the datepicker
Calendar mcurrentDate=Calendar.getInstance();
mYear=mcurrentDate.get(Calendar.YEAR);
mMonth=mcurrentDate.get(Calendar.MONTH);
mDay=mcurrentDate.get(Calendar.DAY_OF_MONTH);
DatePickerDialog mDatePicker=new DatePickerDialog(getActivity(), new DatePickerDialog.OnDateSetListener() {
public void onDateSet(DatePicker datepicker, int selectedyear, int selectedmonth, int selectedday) {
final Calendar c = Calendar.getInstance();
c.set(Calendar.YEAR, selectedyear);
c.set(Calendar.MONTH, selectedmonth);
c.set(Calendar.DAY_OF_MONTH, selectedday);
// Date date = c.getTime();
// editDate.setText(date);
}
},mYear, mMonth, mDay);
mDatePicker.setTitle("Select date");
mDatePicker.show(); }
});
我自己修好了。 我之所以有這么多問題是因為進口錯誤。
我在ondateset方法中做到了這一點:
java.text.DateFormat f = java.text.DateFormat.getDateInstance(DateFormat.MEDIUM, Locale.getDefault());
editDate.setText(f.format(c.getTime()));
您需要一種機制來獲取用戶的語言環境,然后才能格式化日期Java樣式
DateFormat df = DateFormat.getDateInstance(DateFormat.MEDIUM, Locale.US);
System.out.println(df.format(new Date()));
// Nov 18, 2014
df = DateFormat.getDateInstance(DateFormat.MEDIUM, Locale.FRANCE);
System.out.println(df.format(new Date()));
// 18 nov. 2014
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.