LocalDate와 DateTimeFormatter 라이브러리를 이용하면 문자로 된 날짜를 Date 객체로 변환할 수 있습니다. 스트링을 Date객체로 변환하면 날짜 계산 등 데이터를 처리하는데 편리합니다.
날짜 파싱하여 LocalDate 객체 생성
LocalDate.parse
를 이용하면 문자를 파싱하여 LocalDate 객체를 생성할 수 있습니다.
아래 코드에서 DateTimeFormatter.ISO_DATE
는 "yyyy-mm-dd"를 상수로 선언한 것입니다.
이 옵션을 사용하면 "yyyy-mm-dd" 형태의 스트링을 파싱할 수 있습니다.
import java.time.LocalDate
import java.time.format.DateTimeFormatter
fun main(args: Array<String>) {
val string = "2019-01-10"
val date = LocalDate.parse(string, DateTimeFormatter.ISO_DATE)
println(date)
}
출력
2019-01-10
Format을 정의하여 날짜 파싱
날짜가 "2019년 01월 10일"같이 형식이 일반적이지 않은 경우, 패턴을 만들어 파싱하는데 사용할 수 있습니다.
아래 코드는 "yyyy년 MM월 dd일"패턴을 생성하여 문자를 파싱하는 예제입니다.
LocalDate.format
API를 사용하면 fommater 형태로 문자를 출력해줍니다.
import java.time.LocalDate
import java.time.format.DateTimeFormatter
fun main(args: Array<String>) {
val string = "2019년 01월 10일"
val formatter = DateTimeFormatter.ofPattern("yyyy년 MM월 dd일")
val date: LocalDate = LocalDate.parse(string, formatter)
println(date)
println(date.format(formatter))
}
출력
2019-01-10
2019년 01월 10일
DateTimeFormatter에서 다음과 같은 패턴들을 사용할 수 있습니다.
패턴 | 예제 |
---|---|
yyyy-MM-dd | “2019-07-04” |
dd-MMM-yyyy | “04-July-2019” |
dd/MM/yyyy | “04/07/2019” |
yyyy-MM-dd'T'HH:mm:ssZ | “2019-07-04T12:30:30+0530” |
h:mm a | “12:00 PM” |
yyyy년 MM월 dd일 | "2019년 01월 10일" |
정리
문자를 LocalData 객체로 변환하는 방법에 대해서 알아보았습니다. 일반적인 날짜는 상수로 정의되어있는 것을 사용하면 되고, 그렇지 않다면 Fomatter를 만들어서 파싱하면 됩니다.
Loading script...
Related Posts
- Kotlin - 배열에서 최소 값, 최대 값 찾기
- Kotlin - 2차원 배열 선언, 초기화 방법
- Kotlin - 배열 선언, 초기화 방법
- Kotlin - 리스트, 배열 길이 가져오기
- Kotlin - 리스트에서 최대, 최소 값 찾기
- Kotlin - for 반복문, 배열/리스트 순회
- Kotlin - Timer, 주기적으로 함수 실행
- Kotlin - sleep, 쓰레드 몇 초 지연
- Kotlin - Thread 생성 및 실행
- Kotlin에서 정규표현식 사용하기
- Kotlin - 문자열 길이 계산
- Kotlin - 문자열 비교 방법(equals, ==, compareTo)
- Kotlin - 2개의 배열 하나로 합치기
- Kotlin - 2개의 List 하나로 합치기
- Kotlin - 디렉토리의 모든 파일 리스트 출력
- Kotlin - 리스트 정렬 방법 (sort, sortBy, sortWith)
- Kotlin - 문자열 뒤집기 (Reverse String)
- Kotlin - 랜덤 숫자 생성 (Random, SecureRandom)
- Kotlin - Range, 숫자 범위 표현
- Kotlin - 음수를 양수로 변환, math.abs()
- Kotlin - List를 Set로 변환
- Kotlin - Set를 List로 변환
- Kotlin - 문자열에서 숫자(int)만 추출하는 방법
- Kotlin - Map을 List로 변환하는 방법
- Kotlin - File, Directory가 존재하는지 확인
- Kotlin - List를 Map으로 변환
- Kotlin - List의 중복 요소 제거
- Kotlin - List를 Array로 변환
- Kotlin - 엘비스 연산자 (Elvis Operation)
- Kotlin - Array를 List로 변환
- Kotlin - String을 Float으로 변환
- Kotlin - String을 Double으로 변환
- Kotlin - String을 Int로 변환
- Kotlin - String을 Long으로 변환
- Kotlin - String Null 또는 Empty 체크