나는 Gson을 사용하여 나의 pojos를 직렬화/역 직렬화하고 Gson에게 날짜 속성을 유닉스 타임 스탬프로 구문 분석/출력하도록 명확한 방법을 찾고있다. 여기 내 시도입니다 :유닉스 타임 스탬프를 파싱/출력하기위한 Gson dateformat
Gson gson = new GsonBuilder().setDateFormat("U").create();
PHP에서 오는 "U"는 구문 분석하는 데 사용되는 DATEFORMAT/유닉스 타임 스탬프로 출력 날짜입니다, 내 시도 코드를 실행할 때,이 RuntimeException을 얻고있다 :
을알 수없는 패턴 문자 'U는'내가 GSON는 문자 "U"를 정의하지 않습니다 후드하여 SimpleDateFormat을 사용하는 가정입니다
합니다.
DateTypeAdapter
을 쓸 수 있으며 GsonBuilder
에 등록 할 수 있지만이를 달성하기위한 더 깨끗한 방법을 찾고 있습니다. 단순히 DateFormat
을 변경하는 것이 좋습니다.
안녕하세요, 귀하의 답변은 https://github.com/google/gson/issues/987에서 귀하의 질문을 해결합니다. ypu는 실제 Gson 방식으로 구현 된 자체 솔루션을 가지고 있으므로 (해결 방법이 아니며, 의도적으로 설계된 것입니다) :) 문제를 닫으시겠습니까? 감사! –
@LyubomyrShaydariv 나를 상기시키기위한 고맙습니다. 귀하의 요청이 이행되었습니다. (그리고 Gson이 설계 한 방식이다.) – AnixPasBesoin
아, 그리고 또 하나 주목해라.'JsonReader.toString'는'JsonReader'와 같이 사람이 읽을 수있는 현재'JsonReader' 상태를 1 행 1 열 경로 $와 같이 반환합니다. 아마 typo가 있고,'in.nextString()'은 코드에서 정말로 필요한 것을 수행합니다. 아니면 더 짧게 :'new Date (in.nextLong()/1000)'. –