Saya ingin mendapatkan tanggal dari widget pemilih data di android Saya telah mencoba dengan ini
Date date1= (Date) new Date
(dpBirthDate.getYear(), dpBirthDate.getMonth(), dpBirthDate.getDayOfMonth());
date1 = (Date) new SimpleDateFormat("yyyy-MM-dd").parse(date1.toString());
Tapi saya mendapatkan tanggal seperti ini mon 7 dec 2011 time
... dan yang ingin saya dapatkan adalah format yyyy-MM-dd
untuk menyimpannya di database.
Saya juga mencoba menggabungkan tahun-bulan-hari seperti ini tetapi masalahnya adalah misalnya hari ini 2011-12-7 harinya harus 07 agar valid
Bisakah Anda membantu saya?
Saya menggunakan ini:
/**
*
* @param datePicker
* @return a java.util.Date
*/
public static java.util.Date getDateFromDatePicker(DatePicker datePicker){
int day = datePicker.getDayOfMonth();
int month = datePicker.getMonth();
int year = datePicker.getYear();
Calendar calendar = Calendar.getInstance();
calendar.set(year, month, day);
return calendar.getTime();
}
Anda harus menggunakan SimpleDateFormat.format
untuk mengonversi objek Tanggal
menjadi String
, seperti ini
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
String dateString = sdf.format(date1);
Saya pikir Anda baru saja melakukannya secara terbalik. Anda perlu menggunakan format
untuk mengubah dari Tanggal ke String, dan parse
untuk mengubah dari String ke Tanggal.
Saya tahu ini sudah lama tetapi saya berjuang untuk menemukannya. Jadi untuk anak cucu
Skenario: Sebuah Tampilan membutuhkan tanggal dalam yyyy-mm-dd
date_field = (EditText)findViewById(R.id.input_date);
date_field.setFocusable(false); // disable editing of this field
date_field.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(final View v) {
chooseDate();
}
});
private void chooseDate() {
final Calendar calendar = Calendar.getInstance();
final int year = calendar.get(Calendar.YEAR);
final int month = calendar.get(Calendar.MONTH);
final int day = calendar.get(Calendar.DAY_OF_MONTH);
DatePickerDialog datePicker =
new DatePickerDialog(this, new DatePickerDialog.OnDateSetListener() {
@Override
public void onDateSet(final DatePicker view, final int year, final int month,
final int dayOfMonth) {
@SuppressLint("SimpleDateFormat")
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
calendar.set(year, month, dayOfMonth);
String dateString = sdf.format(calendar.getTime());
date_field.setText(dateString); // set the date
}
}, year, month, day); // set date picker to current date
datePicker.show();
datePicker.setOnCancelListener(new DialogInterface.OnCancelListener() {
@Override
public void onCancel(final DialogInterface dialog) {
dialog.dismiss();
}
});
}
Semoga ini membantu seseorang