[Android, SimpleDataFromat, Joda-Time ] 시간 함수 사용하기
SimpleDataFromat 사용법과 JodaTime 에 대해 포스팅 하겠습니다.
날짜와 시간을 가져올 때 SimpleDataFormat 을 주로 사용했습니다.
Date data = new Date();
SimpleDateFormat simpleDateFormat = new SimpleDateFormat("yyyy년 MM월 dd일 a hh시 mm분 ss초");
String today = simpleDateFormat.format(data);
실행법은 위와 같이 간단합니다.
(Data 는 java.util.date 를 import 해야 합니다.)
(SimpleDataFormat 에서 'a' 는 오전/오후 를 나타냅니다.)
하지만 SimpleDataFormat 은 Thread-Safe 하지 못하기 때문에 쓰레드에 많은 부하가 걸립니다.
그래서 이번에 소개할 시간 라이브러리는 Joda-Time 입니다.
Joda-Time 은 불변객체가 아니기 떄문에 Data, Calendar 객체와 같이 여러 곳에서 공유되면 한 곳에서 바꾼 값이 다른 곳에 영향을 미치는 부작용이 생기지 않습니다.
또한 쓰레드 상에서 SimpleDataFormat 보다 안전하다고 합니다.
<사용법>
1. dependencies 에 추가해줍니다.
dependencies {
implementation 'net.danlew:android.joda:2.9.9.3'
}
2. application 에서 한번 초기화 해줍니다.
public class MyApp extends Application {
@Override public void onCreate() { super.onCreate(); JodaTimeAndroid.init(this); } }
그럼 설정은 완료!!
사용법은 간단합니다.
아래와 같이
import org.joda.time.DateTime;
joda.time 을 갖는 DataTime 을 import 하고
DateTime dateTime = new DateTime();
String today = dateTime.toString("yyyy년 MM월 dd일 HH:mm:ss");
위와 같이 포멧을 설정 하여 사용하시면 됩니다.
포멧 관한 더 많은 패턴은 이 링크를 확인해 주세요
< 참고자료 >