gpt4 book ai didi

android - 如何在 SharedPreferences 中存储 Date 对象?

转载 作者:太空宇宙 更新时间:2023-11-03 12:37:22 28 4
gpt4 key购买 nike

我需要将日期对象放入共享首选项编辑器中。

要将其转换成什么数据类型以存储在共享首选项中?通常我们写prefEditor.putString("Idetails1", Idetails1); 用于字符串和元素。

我该怎么做?我也可以将它用于日期对象吗?

private EditText pDisplayDate;
private ImageView pPickDate;
private int pYear;
private int pMonth;
private int pDay;
/** This integer will uniquely define the dialog to be used for displaying date picker.*/
static final int DATE_DIALOG_ID = 0;

Date date;

private DatePickerDialog.OnDateSetListener pDateSetListener =
new DatePickerDialog.OnDateSetListener() {
public void onDateSet(DatePicker view, int year,
int monthOfYear, int dayOfMonth) {
pYear = year;
pMonth = monthOfYear;
pDay = dayOfMonth;
updateDisplay();
displayToast();
}
};

private void updateDisplay() {
pDisplayDate.setText(
new StringBuilder()
// Month is 0 based so add 1
.append(pMonth + 1).append("/")
.append(pDay).append("/")
.append(pYear).append(" ")
);
}

private void displayToast() {
Toast.makeText(this,
new StringBuilder()
.append("Date choosen is ")
.append(pDisplayDate.getText()),
Toast.LENGTH_SHORT).show();
}

最佳答案

can i use this for date object too??

我认为您可以使用的最简单的方法是将 Date 转换为其字符串表示形式。然后您可以使用一些日期格式化程序将它简单地转换回 Date 对象。

String dateString = date.toString();
SharedPreferences p = PreferenceManager.getDefaultSharedPreferences(<context>);
p.edit().putString("date", dateString).commit();

更新:

还有@MCeley 指出的方法,您还可以将 Date 转换为 long 并放入其 long 值:

long dateTime = date.getTime();
SharedPreferences p = PreferenceManager.getDefaultSharedPreferences(<context>);
p.edit().putLong("date", dateTime).commit();

关于android - 如何在 SharedPreferences 中存储 Date 对象?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15743339/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com