그레고리 시아 콜렌더 날짜에 AM / PM을 설정하거나 할 수있는 것입니다.

StackOverflow https://stackoverflow.com//questions/9667080

  •  12-12-2019
  •  | 
  •  

문제

나는 그레고리 시아 콜렌더에 대한 Java API를 살펴보고 AM / PM을 설정하는 방법을 보지 못했습니다. 생성자에서.GregorianCalendar 날짜에 AM / PM을 설정하거나 캘린더에서 GET 메소드 만 사용하는 것이 가능합니다.이 모든 것을 자동으로 처리합니까?나는 Date 객체가있는 클래스에 대해 AM / PM을 가져 와서 내 toString에서 출력하려고합니다.나는 이것을 캘린더에서 GET 메소드를 사용하여 이것을 얻을 것입니다.나는 AM / PM이 0 또는 1 인 int 인 것을 이해합니다.

나는 또한 모든 시간이 그레고리니아에서 24 시간이고 자동으로 AM과 PM을 결정하는지 궁금해하고 있었습니까?

도움이 되었습니까?

해결책

Calendar.get(Calendar.HOUR);
.

는 AM / PM 형식의 시간 (0-12)을 제공합니다.

Calendar.get(Calendar.HOUR_OF_DAY);
.

은 시간을 0-24에서 제공합니다.

그것은 자체적으로 변환을합니다.당신은 그것을 말할 필요가 없습니다.

cal.set( Calendar.AM_PM, Calendar.AM )
.

/ 변경 이 캘린더 객체가 나타내는 포인트 시간입니다.(오후 1 시가 지나면 오전 1 시가 지나면).이것은 GregorianCalendar (Peter Cetinski의 질문에 대한 의견을 참조하십시오).

btw / 힌트 IMO DateFormat를 사용하여 Output 기본 형식을 사용해야합니다.

다른 팁

Calendar cal = new GreogorianCalendar();   
cal.set( Calendar.AM_PM, Calendar.AM );

Simply I did this :

Calendar calendar = new GregorianCalendar();
    int seconds = calendar.get(Calendar.SECOND);
    int minutes = calendar.get(Calendar.MINUTE);
    int hour = calendar.get(Calendar.HOUR);
    int am_pm = calendar.get(Calendar.AM_PM);
    String ampm = "ampm";
    if (am_pm == 0) {
        ampm = "AM";
    } else {
        ampm = "PM";
    }
    jLabel1.setText(hour + ":" + minutes + ":" + seconds + " " + ampm);
라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top