java 에서 Date 의 용법

5696 단어 JAVA
요약:     Date 류 는 자바 개발 패키지 (JDK) 1.0 에서 진화 하기 시 작 했 습 니 다. 그 당시 에 날짜 데 이 터 를 얻 거나 설정 하 는 여러 가지 방법 만 포함 되 었 습 니 다. 예 를 들 어 달, 일, 년 등 방법 들 은 현재 비판 을 받 았 고 Calendar 류 로 옮 겨 졌 습 니 다. 우 리 는 본 논문 에서 이 를 더욱 토론 할 것 입 니 다.
    이러한 개선 은 날짜 데 이 터 를 더 잘 처리 하기 위 한 국제 화 형식 입 니 다. JDK 1.1 에서 처럼 Date 류 는 실제 패키지 류 일 뿐 입 니 다. 이 는 긴 정형 데 이 터 를 포함 하고 있 습 니 다. GMT (그리니치 표준 시간) 1970 년, 1 월 1 일 00: 00: 00 이 순간 이전 또는 그 후에 겪 은 밀리초 수 를 나타 냅 니 다.
날짜 대상 만 들 기       시스템 의 현재 날짜 와 시간 을 사용 하여 날짜 대상 을 만 들 고 긴 정수 로 돌아 가 는 간단 한 예 를 보 여 줍 니 다. 이 시간 은 보통 자바 가상 머 신 (JVM) 호스트 환경 이 라 고 불 리 는 시스템 시간 입 니 다.
import java.util.Date; 

public class DateExample1 {
    public static void main(String[] args) {
    // Get the system date/time
    Date date = new Date();

    System.out.println(date.getTime());
    }
}

토요일, 2001 년 9 월 29 일, 오 후 는 약 6: 50 의 모습 입 니 다. 위의 예 는 시스템 출력 장치 에 표 시 된 결 과 는 100180389710 입 니 다. 이 예 에서 주의해 야 할 것 은 우리 가 Date 구조 함 수 를 사용 하여 날짜 대상 을 만 들 었 는데 이 구조 함 수 는 어떠한 인자 도 받 아들 이지 않 았 습 니 다. 이 구조 함 수 는 내부 에서 System. currentTimeMillis () 를 사 용 했 습 니 다.시스템 에서 날 짜 를 가 져 오 는 방법 입 니 다.
그렇다면 1970 년 1 월 1 일부 터 겪 은 밀리초 수 를 어떻게 얻 는 지 알 게 되 었 습 니 다. 우 리 는 어떻게 해야만 사용자 가 알 고 있 는 형식 으로 이 날 짜 를 표시 할 수 있 습 니까?이 클래스 에 서 는 자바. text. Simple DateFormat 과 추상 적 인 기본 클래스 인 자바. text. DateFormat 이 도움 이 됩 니 다.
날짜 데이터 맞 춤 형 형식
만약 에 우리 가 날짜 데이터 의 형식 을 맞 추 기 를 원한 다 면 예 를 들 어 토요일 - 9 월 - 29 일 - 2001 년. 아래 의 예 는 이 일 을 어떻게 완성 하 는 지 보 여 준다.
import java.text.SimpleDateFormat; 
import java.util.Date;

public class DateExample2 {

    public static void main(String[] args) {

        SimpleDateFormat bartDateFormat =new SimpleDateFormat("EEEE-MMMM-dd-yyyy");

        Date date = new Date();

        System.out.println(bartDateFormat.format(date));
    }
}

     Simple DateFormat 의 구조 함수 에 형식 문자열 인 "EEE - MMMM - dd - yyy" 를 전달 하면 원 하 는 형식 을 가리 킬 수 있 습 니 다. 형식 문자열 의 ASCII 문 자 는 포맷 함수 아래 에 날짜 데이터 의 어느 부분 을 표시 하 는 지 알려 줍 니 다. EEE 는 요일 이 고, MMMM 은 달 이 며, dd 는 일 입 니 다.yyy 는 년 입 니 다. 문자 의 개 수 는 날 짜 를 어떻게 포맷 하 는 지 결정 합 니 다. "EE - MM - d - yy" 를 전달 하면 Sat - 09 - 29 - 01 을 표시 합 니 다. Sun 회사 의 웹 사이트 에서 날짜 포맷 옵션 을 가 져 오 는 완전한 지 시 를 보십시오.
텍스트 데 이 터 를 날짜 대상 으로 분석 합 니 다.
포맷 된 날짜 대상 을 포함 하 는 텍스트 문자열 이 있다 고 가정 합 니 다. 이 문자열 을 해석 하고 텍스트 날짜 데이터 에서 날짜 대상 을 만 들 고 싶 습 니 다. "MM - dd - yyyy" 문자열 을 포맷 하여 Simple DateFormat 클래스 를 다시 호출 할 것 입 니 다. 하지만 이번 에는 텍스트 날짜 데 이 터 를 만 드 는 것 이 아니 라 포맷 해석 을 사용 합 니 다. 우리 의 예 는...아래 에 표시 합 니 다. 텍스트 문자열 '9 - 29 - 2001' 을 분석 하고 값 이 001736000000 인 날짜 대상 을 만 듭 니 다.
예 프로그램:
import java.text.SimpleDateFormat; 
import java.util.Date;

public class DateExample3 {

    public static void main(String[] args) {
        // Create a date formatter that can parse dates of
        // the form MM-dd-yyyy.
        SimpleDateFormat bartDateFormat = new SimpleDateFormat("MM-dd-yyyy");

        // Create a string containing a text date to be parsed.
        String dateStringToParse = "9-29-2001";

        try {
            // Parse the text version of the date.
            // We have to perform the parse method in a
            // try-catch construct in case dateStringToParse
            // does not contain a date in the format we are expecting.
            Date date = bartDateFormat.parse(dateStringToParse);

            // Now send the parsed date as a long value
            // to the system output.
            System.out.println(date.getTime());
        }
        catch (Exception ex) {
            System.out.println(ex.getMessage());
        }
    }
}

표준 날짜 포맷 과정 사용 하기
       맞 춤 형 날짜 형식 을 만 들 고 해석 할 수 있 는 만큼 내 장 된 포맷 과정 을 어떻게 사용 하 는 지 살 펴 보 겠 습 니 다. 방법 DateFormat. getDateTimeInstance () 는 몇 가지 다른 방법 으로 표준 날짜 포맷 과정 을 얻 을 수 있 습 니 다. 아래 의 예 에서 내 장 된 네 개의 날짜 포맷 과정 을 얻 었 습 니 다. 짧 은 것 을 포함 합 니 다.중간, 긴, 그리고 완전한 날짜 형식.
import java.text.DateFormat; 
import java.util.Date;

public class DateExample4 {

    public static void main(String[] args) {
        Date date = new Date();

        DateFormat shortDateFormat =
        DateFormat.getDateTimeInstance(
        DateFormat.SHORT,
        DateFormat.SHORT);

        DateFormat mediumDateFormat =
        DateFormat.getDateTimeInstance(
        DateFormat.MEDIUM,
        DateFormat.MEDIUM);

        DateFormat longDateFormat =
        DateFormat.getDateTimeInstance(
        DateFormat.LONG,
        DateFormat.LONG);

        DateFormat fullDateFormat =
        DateFormat.getDateTimeInstance(
        DateFormat.FULL,
        DateFormat.FULL);

        System.out.println(shortDateFormat.format(date));
        System.out.println(mediumDateFormat.format(date));
        System.out.println(longDateFormat.format(date));
        System.out.println(fullDateFormat.format(date));
    }
}

  getDateTimeInstance 호출 할 때마다 두 개의 값 을 전달 합 니 다. 첫 번 째 매개 변 수 는 날짜 스타일 이 고 두 번 째 매개 변 수 는 시간 스타일 입 니 다. 기본 데이터 형식 int (정형) 입 니 다. 가 독성 을 고려 하여 DateFormat 류 가 제공 하 는 상수: SHORT, MEDIUM, LONG,FULL. 가 져 오 는 시간 과 날짜 포맷 과정 에 대한 더 많은 방법 과 옵션 을 알 고 싶 으 시 면 Sun 회사 웹 사이트 의 설명 을 보십시오.
우리 의 예 프로그램 을 실행 할 때 표준 출력 장치 에 다음 내용 을 출력 합 니 다.
9/29/01 8:44 PM
Sep 29, 2001 8:44:45 PM
September 29, 2001 8:44:45 PM EDT
Saturday, September 29, 2001 8:44:45 PM EDT

좋은 웹페이지 즐겨찾기