Я говорю по опыту, лучший способ сохранить Date
- это сохранить время UNIX Epoch,
SharedPreferences settings = getSharedPreferences("my_prefs", 0);
SharedPreferences.Editor editor = settings.edit();
editor.putString("date", myDate.getTime() ); //getTime is a long (So store it as a string/long, doesn't really matter)
editor.commit();
Это сэкономит вам время / код от анализа.
При извлечении даты просто используйте конструктор new Date(long date)
или класс Calendar
также имеет setTimeinMillis
.
Удачи.