여러 양식의 시간 표시 방법을 자유롭게 바꿔보자 안드로이드 노트


1. 서버로부터 받은 시간 양식을 바꿔보자.

일단 TimeUtil이라는 클래스를 하나 만든다. 어디서나 쓸 수 있게 따로 파일을 만들어둬야 한다.


서버에서 보내주는 시간 값은 보통 yyyy-MM-dd HH:mm:ss와 비슷한 형태인 경우가 많다. '2016-03-03 13:04:16'과 같은 문자열이다.

이를 yyyyMMddHHmmss 형식으로 바꾸려면 어떻게 해야 할까?

가장 빠른 방법은 API 개발자에게 부탁하는 것일 수도 있다. 혼자서 API와 클라이언트 다 하는 사람은 논외.

근데, API 개발자는 그런 것까지 해 주고픈 마음이 아마 없을 거다. 시간을 보내달라고 했으니 보내 주는 거고, 클라이언트가 그걸 어떻게 해 먹든지는 대체로 알 바 아니다. '아니 이렇게(yyyy-MM-dd HH:mm:ss) 해 달랬잖아요?'
클라이언트 쪽도 그 쪽대로 이거 땜에 아쉬운 소리 하는 것도 그렇다. 다른 부분에서 부탁할 게 사방천지인데 겨우 그깟 거 가지고 굽신대라고?

기본 양식은 위와 같이 해 두는 게 좋다. 값을 잘못 보내거나 이런저런 실수가 생기면 try catch로 후딱 에러 처리 해 버리는 게 속편하다.



원본 시간의 양식을 받는 날짜 포맷 변수를 하나 만든다.



변환하고 싶은 양식의 포맷도 지정을 해 준다.



원본 시간을 통해 Date 값을 받고, 변환할 양식의 포맷을 이용해 그 Date로부터 문자열을 받는다.



메인 액티비티에서 적당한 시간을 넣어서 로그로 뽑아보자.




원하던 양식이 정확하게 표시되는지 확인하자.






2. 여러가지 양식으로 여러가지 양식을 보낼 수 있게....
사실 조금만 생각해 보면 쉬운 건데....

함수 패러미터로 양식을 따로 받아오면 된다


좋은 대로 보내버리자. 아 물론 앞에 원본 날짜와 양식 두 개는 형태가 같아야 한다. 나는 잘 나왔으니까 패스




3. 년 / 월 / 일 따로 받고 싶은데....

윗단계를 안다면 끔찍하게 쉽다.

받고 싶은 부분만 보내자.

참고로 MM은 월, mm은 분이다.


덧글

댓글 입력 영역