그레고리 시아 콜렌더 날짜에 AM / PM을 설정하거나 할 수있는 것입니다.
-
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);
제휴하지 않습니다 StackOverflow