Android/Java

[Android/Java] Calendar to Date, Date to Calendar, String to Date, String to Calendar

colalove5562 2021. 7. 14. 23:47

저는 개인적으로 상당히 많이 상용하는 것들 입니다.

날짜등의 데이터는 long 타입으로 변환하여 간편하게 비교하거나, 일단 숫자이지만 문자형태로 저장하고 다시 변환..

 

 

1. Calendar To Date

Calendar calendar = Calendar.getInstance();
Date date = new Date(clendar.getTimeInMillis());

 

2. Date to Calendar

Date date = new Date();
Calendar calendar = Calendar.getInstance();
calendar.setTime(date);

 

 

 

3. String to Date

SimpleDateFormat simple_format = new SimpleDateFormat("yyyy.MM.dd HH:mm");
String timeString = "2021.07.14 23:39";
Date date = null;

try{
	date = simple_format.parse(timeString);
} catch (ParseException e) {
	e.printStackTrace();
}

* try{} catch{} 사용!

* 변경하고자 하는 String 타입의 형식과, SimpleDateFormat 형식이 같아야 합니다.

만약 문자열의 모습이 "2021/07/14 23:41" 이라면, 데이터 포맷도 "yyyy/MM/dd HH:mm" 으로 설정해야겠죠? 

 

4. String to Calendar

- 위에서 String을 Date 형식으로 바꾸는 걸 해봤습니다! Calednar로 바꾸는 방법도 마찬가지로

String -> Date -> 2번(Date to Calendar) 순으로 작업하면 되겠습니다! ^^

SimpleDateFormat simple_format = new SimpleDateFormat("yyyy.MM.dd HH:mm");
String timeString = "2021.07.14 23:39";
Date date = null;

try{
	date = simple_format.parse(timeString);
} catch (ParseException e) {
	e.printStackTrace();
}

Calendar calendar = Calendar.getInstance();
calendar.setTime(date);

Error : void java.util.Calendar.setTime(java.util.Date)' on a null object reference

Date 에서 Calendar 로 변환하는 과정중에 계속 이런 에러가 발생한다면?

Calendar.getinstance();를 빼먹진 않았는지 확인해주세요! 추가해주지 않으면 계속 Null 에러가 발생합니다.