簡體   English   中英

如何從我的EditText獲取具有格式化日期的Date對象(通過Spinner存儲)

[英]How to Get Date Object with formatted date from my EditText (Stored through Spinner)

我使用Spinner彈出窗口(通過單擊EditText)通過EditText獲得了格式化的日期。 我如何將格式化的日期存儲為Date對象以存儲到數據庫中。 下面是代碼示例

Context context = this;
Calendar myCalendar = Calendar.getInstance();
String dateFormat = "dd / MM / yyyy";
DatePickerDialog.OnDateSetListener date;
SimpleDateFormat sdf = new SimpleDateFormat(dateFormat, Locale.UK);

private EditText mDOB = findViewById(R.id.date_of_birth);
private Date dateOfBirth;


 private void datePicker() {

    // init - set date to current date
    long currentdate = System.currentTimeMillis();
    String dateString = sdf.format(currentdate);
    mDOB.setHint(dateString);

    // set calendar date and update editDate
    date = new DatePickerDialog.OnDateSetListener() {

        @Override
        public void onDateSet(DatePicker view, int year, int monthOfYear,
                              int dayOfMonth) {
            myCalendar.set(Calendar.YEAR, year);
            myCalendar.set(Calendar.MONTH, monthOfYear);
            myCalendar.set(Calendar.DAY_OF_MONTH, dayOfMonth);
            updateDate();
        }

    };

// onclick - popup datepicker
    mDOB.setOnClickListener(new View.OnClickListener() {

        @Override
        public void onClick(View v) {
            new DatePickerDialog(context, date, myCalendar
                    .get(Calendar.YEAR), myCalendar.get(Calendar.MONTH),
                    myCalendar.get(Calendar.DAY_OF_MONTH)).show();
        }
    });
}

private void updateDate() {
    mDOB.setText(sdf.format(myCalendar.getTime()));
    dateOfBirth = mDOB.???
}

SQLite版本3中的數據類型

SQLite沒有為存儲日期和/或時間預留存儲類。 相反,SQLite內置的日期和時間功能可以將日期和時間存儲為TEXT,REAL或INTEGER值。

因此,您不會將date存儲為Date
根據需要設置日期格式並將其存儲為TEXT
myCalendar.getTime()存儲為INTEGER

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM