我想将当前日期保存到listview中的textview我还有其他所有设置,所以不需要帮助那里只是将日期保存到textview我的代码如下可以有人告诉我什么错误?
SharedPreferences settings = PreferenceManager.getDefaultSharedPreferences(getApplicationContext());
SharedPreferences.Editor editor = settings.edit();
editor.putLong("time", date.getTime());
editor.commit();
Date date2 = new Date(settings.getLong("time", 0));
答案 0 :(得分:4)
不推荐使用Date类的大多数方法。您应该使用Calendar类。
Calendar c = Calendar.getInstance();
要存储在您的SharedPreferences中,我建议您存储一个很长的,这是c.getTimeInMillis();
要获取此日期并存储在Calendar对象中,您应该放置c.setTimeInMillis(myTimeStoredInSharedPreferences)
答案 1 :(得分:1)
我会忘记忘记日期和日历 - 只使用:
SharedPreferences settings =
PreferenceManager.getDefaultSharedPreferences(getApplicationContext());
settings.edit().putLong("time", System.currentTimeMillis()).commit();
// get the time and make a date out of it
Date date2 = new Date(settings.getLong("time", 0));
这是在您的应用内部使用currentTimeMillis()
,如果您想向用户显示内容,只需使用日期
永远不要在本地使用Calendar.getInstance()
- 这很贵
如果你一直使用日期考虑JodaTime