java 에서 Date 타 입 에서 MongoDB 로 의 날짜 전환 문제, 2018 - 03 - 01T 16: 00: 00.000 Z, 8 시간 이 부족 합 니 다. 3 월 2 일이 어야 합 니 다.

1170 단어 자바
한 가지:
String dt = "2018年3月2日";
SimpleDateFormat sd = new SimpleDateFormat("yyyy年MM月dd日");
//sd.setCalendar(new GregorianCalendar(new SimpleTimeZone(0, "GMT")));
Date time = sd.parse(dt);

steel.setTime(time);//时间

그리고 대상 을 mongo 에 저장 하면 날 짜 는 2018 - 03 - 01T 16: 00: 00.000 Z 로 표 시 됩 니 다.
왜 하루 가 부족 한 것 같 아 요? 사실은 8 시간 이 부족 해 요. 왜냐하면:
우리 의 현재 시간 대 를 연상 하 는 것 은 + 8 구역 이다. 그리고 16 + 8 도 바로 다음날 0 시 이기 때문에 이 000 Z 는 대부분 시간 대 와 관련 된 것 으로 추정 된다.
로 컬 시간 'GMT + 8' 로 GMT 를 수정 한 후 코드 에 있 는//안에 설명 되 어 있 는 코드 를 열 어 GMT + 8 시간 대 에 자동 으로 8 시간 추가 합 니 다.
다시 실행: 2018 - 03 - 02T 00: 00: 00 00Z
이렇게 수정 이 됐어 요.
 
다른 종류:
String date = "2018-03-01T16:00:00.000Z"; data 형식 으로 변환,
String date = "2018-03-01T16:00:00.000Z"; 
date = date.replace("Z", " UTC");//注意是空格+UTC
SimpleDateFormat format = new SimpleDateFormat("yyyy-MM-dd'T'HH:mm:ss.SSS Z");//注意格式化的表达式
Date d = format.parse(date);
System.out.print(d);

UTC 통용 표준 시 z 로 표시 합 니 다.z 를 UTC 로 변경 합 니 다.
실행 중: Thu Mar 02 00: 00: 00 CST 2018
다시 돌 아 왔 어. 그리고 다른 일 을 할 수 있어...
 
 
 

좋은 웹페이지 즐겨찾기