2012-10-26 5 views
0

안드로이드에서 타임 스탬프에서 며칠을 빼고 싶습니다.android 타임 스탬프에서 시간을 더하거나 뺄 때

날짜 유형이 long 인 SQL Lite 데이터베이스가 있습니다. 내가 date = date - (3 * 86400000)라고 말한 쿼리를 실행할 때 읽기 쉽도록 변환 할 때 결과적으로 한 시간 차이가 나는 경우가 있습니다.

하지만 어떻게 가능합니까? 그것은 내 시간대에서 한 시간의 일광 절약 시간과 관련이 있습니까? 두 개의 long 값을 사용하여 계산을 수행하고 datetime으로 변환 한 후 일광 절약 문제가 없어야하므로 그 이유가 이상하다고 생각할 수 있습니다.

+0

1 시간 차이가 있음을 어떻게 알 수 있습니까? 이것들을'Date' 또는'Calendar'로 변환하고 있습니까? 자신이하는 일을보기 위해 몇 가지 예제 코드를 보는 것이 도움이 될 것입니다. –

+0

다른 하나가 설정되지 않은 경우 시간대가 설정되면 시간대가 문제가 될 수 있습니다. Java date는 GMT로 기본 설정되어 있기 때문에 누가 시간대에 있는지 파악할 수 있습니다. – dispake

답변

0

답장을 보내 주셔서 감사합니다. 그러나 해결책을 찾았습니다. 타임 스탬프에 일을 밀리 초 단위로 추가하고 그 사이에 일광 설정에 시간 차이가있는 경우 날짜가 자동으로 수정되는 것으로 보입니다.

나는 다음을 수행

은 시간이 무시됩니다 :

Date d = new Date(); 
d.setDays(d.getDays() - 2); 

그러나, 나는 그것이 박쥐 우산보다 유연하고 작업하기 쉽게 때문에 Joda 라이브러리를 사용하는 것이 좋습니다.

관련 문제