java.util.Date는 거의 사용되지 않으므로 주어진 날짜, UTC 시간에 대한 타임 스탬프를 얻는 올바른 방법은 무엇입니까? System.currentTimeMillis()
과 비교할 수있는 값입니다.주어진 날짜에 대한 System.currentTimeMillis()?
답변
Calendar 클래스를 사용하면 특정 시간대의 특정 시간에 타임 스탬프를 만들 수 있습니다.
Calendar cal = new GregorianCalendar();
cal.set(Calendar.DAY_OF_MONTH, 10);
// etc...
if (System.currentTimeMillis() < cal.getTimeInMillis()) {
// do your stuff
}
편집 : 당신이 그이 후에는 다음 밀리 초 시간 스탬프와 비교 얻을 수있는 달력 인스턴스에서 밀리 초 단위로 시간을 얻기 위해 더 직접적인 방법을 사용하도록 변경. 고마워 무법자 프로그래머
캘린더에는 실제로 getTime(). getTime()보다 좀 더 직접적인 getTimeInMillis() 메소드가 있습니다. 어쨌든 +1하십시오. –
Calendar 클래스를 살펴보십시오.
현재 시간 (더 이상 사용되지 않음)으로 데이터를 만든 다음 그 시간에서 캘린더를 만들 수 있습니다 (다른 방법도 있음).
날짜가 사용 된 많은 것들에 대한 "공식적인"대체품은 캘린더입니다. 불행히도 그것은 다소 어색하고 지나치게 조작되었습니다. 문제는 다음과 같이 해결할 수 있습니다
long currentMillis = System.currentTimeMillis();
Date date = new Date(currentMillis);
Calendar calendar = Calendar.getInstance();
calendar.setTime(date);
long calendarMillis = calendar.getTimeInMillis();
assert currentMillis == calendarMillis;
달력은 또한 다른 방법으로 초기화 할 수 있습니다, 심지어 하나 개의 필드를 한 번에 (시, 분, 초 등). Javadoc을 살펴보십시오.
직접 해보지는 않았지만 프로젝트에서 외부 라이브러리를 허용하는 경우 JODA-Time 프로젝트 (오픈 소스)를 살펴 봐야한다고 생각합니다. AFAIK, JODA 시간은 날짜/시간에 새로운 JSR (일반적으로 Java7)에 많은 기여를했습니다.
많은 사람들이 JODA 시간이 모든 java.util.Date/Calendar 문제 ;-)
확실히 가치가 시도의 해결책 주장한다.
JODA-Time - 현재 java.util.Date 및 Calendar는 여러 가지면에서 상당히 파괴되어 있습니다 (JODA 페이지에서 JODA 프로젝트가 처음 만들어진 이유에 대한 동기 부여가 있습니다). –
- 1. 주어진 날짜에 X 일을 추가하는 스크립트?
- 2. SQL의 날짜에 대한 모듈로 산법
- 3. 날짜에 대한 PDO :: PARAM?
- 4. 날짜에 대한 점검 제한
- 5. 날짜에 대한 cron 구문
- 6. 날짜에 대한 정규식
- 7. SQLite3 및 System.currentTimeMillis()
- 8. "blinking"boolean with system.currentTimeMillis()
- 9. 날짜에 대한 haskell 함수가 있습니까?
- 10. dd.MM.yyyy 형식의 날짜에 대한 Regex?
- 11. 날짜에 대한 Crystal 보고서 수식
- 12. 날짜에 대한 CakePHP 유효성 확인
- 13. 순환 날짜에 대한 테이블 디자인
- 14. System.currentTimeMillis()에서 시간이 잘못되었습니다. (Java)
- 15. OLE 및 Delphi를 사용하여 주어진 날짜에 대한 모든 Outlook 약속 나열
- 16. MySQL에서 가장 가까운 (시간 현명한) 항목을 주어진 날짜 또는 연도와 월에만 주어진 날짜에 찾는 방법은 무엇입니까?
- 17. 날짜에 대한 맞춤식 눈에 거슬리는 날짜 검사기
- 18. 현재 날짜에 대한 데이터베이스의 날짜 비교
- 19. 'MMM.'형식의 날짜에 대한 정규식. DD, YYYY`
- 20. 장고 관리자 필터는 날짜에 대한 장고 관리자에
- 21. 날짜에 대한 JQuery 함수 또는 함수
- 22. 집계표가있는 되풀이 날짜에 대한 쿼리 선택
- 23. iPhone 날짜에 대한 자연 언어 처리
- 24. 여러 날짜에 대한 Microsoft SQL Server datediff
- 25. Motorola Droid에서 System.currentTimeMillis()가 항상 0을 반환합니다
- 26. 베이스 : 날짜에
- 27. JAVA의 System.currentTimeMillis() 또는 C#의 Environment.TickCount?
- 28. Java System.currentTimeMillis()를 파이썬 날짜로 변환하기
- 29. 주어진 NSDate 사이의 NSDate
- 30. 검색 날짜에 결과가 없습니다.
주의 : ['java.util.Date'] (https://docs.oracle.com/javase/8/docs/api/java/util/Date.html)와 같은 번거로운 이전 날짜 시간 클래스), ['java.util.Calendar'] (https://docs.oracle.com/javase/8/docs/api/java/util/Date.html),'java.text.SimpleTextFormat'은 이제 [ 레거시] (https://en.wikipedia.org/wiki/Legacy_system), [java.time] (https://docs.oracle.com/javase/8/docs/api/java/time/package) -summary.html) 클래스. –