Date 변수명 = new Date( );
날짜, 시간을 정보를 나타내는 객체이다.
→ 다른 설정 없이 기본 객체를 생성하면 프로그램을 실행하는 현재 시간을 이야기한다.
→ 요일 / 월 / 일 / 시간 / 시간기준 / 년도 의 순서대로 출력된다.
SimpleDateFormat 변수면 = new SimpleDateFormat( 형식 );
시간을 표현할 형식을 결정하는 객체이다.
package home;
import java.io.File;
import java.text.SimpleDateFormat;
import java.util.Date;
public class MySimpleDateFormatEx1 {
public static void main(String[] args) {
File dir = new File("/Users/yejin/Documents/eclipse_lyj");
File[] files = dir.listFiles();
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd a hh:mm");
for (File temp : files) {
String name = temp.getName();
String info;
if (temp.isDirectory()) {
info = "[ " + name + " ]";
} else {
info = name + "\t" + (temp.length() / 1024) + "KB";
}
long time = temp.lastModified();
Date date = new Date();
date.setTime(time);
info = info + "\t" + sdf.format(date);
System.out.println(info);
}
}
}
→ listFiles( ) : 파일들의 리스트를 가지고 온다.
→ length( ) : 파일의 크기를 구해준다.(크기 단위 : long)
→ lastModified( ) : 마지막으로 수정한 시간을 나타낸다.
→ setTime( ) : 특정한 시간으로 Date객체를 설정해준다.
→ format( ) : date 형식을 String 으로 바꿔준다.
package home;
import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.Date;
public class MySimpleDateFormatEx2 {
public static void main(String[] args) {
Date date = new Date();
SimpleDateFormat sdf = new SimpleDateFormat("yyyy.MM.dd a hh:mm");
String time = sdf.format(date);
try {
Date result = sdf.parse("2022.12.25 오전 10:25");
System.out.println(sdf.format(result));
System.out.println(result.getTime());
} catch (ParseException e) {
e.printStackTrace();
}
}
}
→ parse( ) : String 을 date 객체로 바꿔준다.
⇒ SimpleDateFormat 와 형식이 일치해야한다. 일치하지 않으면 다음과 같은 오류가 난다.
→ getTime( ) : ms 단위로 시간을 반환해준다.
⇒ 00000(정각)은 초에 대한 정보를 내가 지정안해서 나온 것이다.