안드로이드에 SharedPreferences
에 몇 개의 날짜를 저장하고 검색해야합니다. AlarmManager
을 사용하여 미리 알림 앱을 구축 중이며 향후 날짜 목록을 저장해야합니다. 밀리 초 단위로 검색 할 수 있어야합니다. 먼저 오늘 시간과 미래 시간 사이의 시간을 계산하고 공유 환경 설정에 저장하려고 생각했습니다. 하지만이 방법은 AlarmManager
에 사용해야하므로 작동하지 않습니다.SharedPreferences에서 날짜를 저장하고 검색하는 방법
39
A
답변
131
정확한 날짜를 저장하고로드하려면 Date
개체의 long
(숫자) 표현을 사용할 수 있습니다.
예 :
//getting the current time in milliseconds, and creating a Date object from it:
Date date = new Date(System.currentTimeMillis()); //or simply new Date();
//converting it back to a milliseconds representation:
long millis = date.getTime();
당신이
저장처럼 SharedPreferences
에서 Date
/Time
데이터를 저장하거나 검색하려면이 옵션을 사용할 수 있습니다
:
SharedPreferences prefs = ...;
prefs.edit().putLong("time", date.getTime()).apply();
읽기 그것은 다시 :
Date myDate = new Date(prefs.getLong("time", 0));
편집
당신은 additionaly TimeZone
을 저장하려면, 당신은 그 목적에 대한 몇 가지 도우미 메서드를 작성할 수,이 같은 (내가 그들을 테스트하지 않았습니다가, 부담없이 문제가있을 경우 수정하십시오.) :
public static Date getDate(final SharedPreferences prefs, final String key, final Date defValue) {
if (!prefs.contains(key + "_value") || !prefs.contains(key + "_zone")) {
return defValue;
}
Calendar calendar = Calendar.getInstance();
calendar.setTimeInMillis(prefs.getLong(key + "_value", 0));
calendar.setTimeZone(TimeZone.getTimeZone(prefs.getString(key + "_zone", TimeZone.getDefault().getID())));
return calendar.getTime();
}
public static void putDate(final SharedPreferences prefs, final String key, final Date date, final TimeZone zone) {
prefs.edit().putLong(key + "_value", date.getTime()).apply();
prefs.edit().putString(key + "_zone", zone.getID()).apply();
}
관련 문제
- 1. Android의 sharedPreferences에서 비트 맵을 저장하고 검색하는 방법은 무엇입니까?
- 2. sharedpreferences에서 둘 이상의 값을 저장하고 검색하는 방법은 무엇입니까?
- 3. 날짜 값을 저장하고 검색하는 방법
- 4. mysql에서 날짜를 검색하는 방법
- 5. 저장하고 안드로이드에 sqlite 테이블에서 데이터를 검색하는 방법?
- 6. 문자열을 쿠키에 저장하고 검색하는 방법
- 7. asp.net에서 이미지를 저장하고 검색하는 방법
- 8. plist에서 UISegmentedControl을 저장하고 검색하는 방법
- 9. SharedPreferences에서 검색된 문자열을 사용하는 방법
- 10. 활동에서 videoview obj 상태를 저장하고 검색하는 방법
- 11. 동적 목록 뷰를 저장하고 검색하는 방법
- 12. 프레임 버퍼를 저장하고 다시 검색하는 방법
- 13. 데이터 테이블을 저장하고 검색하는 가장 빠른 방법
- 14. 저장하고 검색하는 방법 안드로이드에있는 내용으로 MP3를
- 15. URL 목록을 저장하고 검색하는 가장 좋은 방법
- 16. asp.net에서 blob로 데이터베이스에있는 파일을 저장하고 검색하는 방법
- 17. 숫자 목록을 저장하고 검색하는 가장 좋은 방법
- 18. 활동의 상태를 저장하고 다시 검색하는 방법 Resume
- 19. NSMutableDictionary를 사용하여 데이터를 저장하고 검색하는 방법
- 20. 최대 절전 모드 검색 : 날짜를 검색하는 방법?
- 21. 저장하고 검색하는 프로세스 제어 블록
- 22. 항목을 저장하고 검색하는 방법은 무엇입니까?
- 23. MySQL을 배열에 저장하고 검색하는 PHP
- 24. NSDictionary에 UIColors를 저장하고 검색하는 중입니까?
- 25. sqlite3 데이터베이스에 날짜 + 시간을 저장하고 검색하는 방법은 무엇입니까?
- 26. SQL Server에서 암호를 저장하고 검색하는 방법은 무엇입니까?
- 27. ListView 및 SharedPreferences에서 특정 항목을 제거하는 방법?
- 28. php & mysql을 사용하여 시간/날짜를 저장하고 선택하는 모범 사례?
- 29. 날짜를 데이터베이스에 저장하고 PHP로 가져 오기
- 30. sharedpreferences에서 배열 복원
이것은 작동합니다. 올바른 것으로 표시해야합니다. – rplankenhorn
이 방법은 시간대 별 날짜에는 적용되지 않습니다. 사용 사례 : 여행중인 사용자의 날짜 저장 – Sergii