将日期和时间设置为本地变量 - Android

时间:2018-06-12 13:27:30

标签: java android

我创建了一个表单,用户可以在其中选择日期和时间:

@Override
public void onClick(View v) {
    //Get the date
    if(v == buttonDatePicker){

        mYear = calendar.get(Calendar.YEAR);
        mMonth = calendar.get(Calendar.MONTH);
        mDay = calendar.get(Calendar.DAY_OF_MONTH);

        DatePickerDialog datePickerDialog = new DatePickerDialog(this,
                new DatePickerDialog.OnDateSetListener() {
                    @Override
                    public void onDateSet(DatePicker view, int year, int month, int dayOfMonth) {
                        etDate.setText(dayOfMonth + "-" + month + "-" + year);
                    }
                },mYear,mMonth,mDay);
        datePickerDialog.show();

    }
    //Get the time
    if(v == buttonTimePicker){

        mHour = calendar.get(Calendar.HOUR_OF_DAY);
        mMinute = calendar.get(Calendar.MINUTE);

        TimePickerDialog timePickerDialog = new TimePickerDialog(this,
                new TimePickerDialog.OnTimeSetListener() {
            @Override
            public void onTimeSet(TimePicker view, int hourOfDay, int minute) {
                etTime.setText(hourOfDay + ":" + minute);
            }
        },mHour,mMinute,true);
        timePickerDialog.show();
    }
}

这样可以正常工作,但是如何将日期和时间存储到自己的变量中,以便我可以将这些var存储到我的SQLite数据库中? 我想创建一个日期和时间对象,然后设置从那里就可以了,但是当我使用date时,get方法现在已经过折旧了。

我是否需要将日期和时间转换为长期变量,如下所示:

长pHour =(长)mHour; 和分钟相同,然后将它们连接在一起,然后通过setTime设置它? 但是我如何将它们加在一起呢?

由于 如果有人有任何doc / tut这样做也会很好。

2 个答案:

答案 0 :(得分:1)

存储在TimeInMillis

long storeVal = calendar.getTimeInMillis();

然后将storeVal保存到sharedPreferenses或SQl数据库

答案 1 :(得分:0)

正如Radesh建议您可以使用calendar.getTimeInMillis()存储日期,其中包括日期和时间,但我更喜欢将日期/时间一起存储为以下格式的字符串:"yyyy-MM-dd hh:mm:ss"