gpt4 book ai didi

java - 公历 : can't get the local time hours

转载 作者:行者123 更新时间:2023-11-29 03:49:10 28 4
gpt4 key购买 nike

我正在编写一个类来简化我可以使用 GregorianCalendar 进行的所有操作。我需要做的操作是:- 获取字符串格式的日期,翻译成意大利语;- 在两个日期之间进行减法。我没有使用过日历、日期和时间类,因为它们有很多已弃用的方法。此外,该标签不是 gregoriancalendar,因为我可能需要使用另一个类(但如果不同意,请随意修改它)。然而,这是类:

package TruckingCompany;

import java.util.GregorianCalendar;
import java.util.Locale;

@SuppressWarnings("serial")
public class TCCalendar extends GregorianCalendar
{
public TCCalendar()
{
super(Locale.ITALY);
}
@Override
public String toString()
{
String str=new String();
switch(get(DAY_OF_WEEK))
{
case 1:
str+="Domenica ";
break;
case 2:
str+="Lunedì ";
break;
case 3:
str+="Martedì ";
break;
case 4:
str+="Mercoledì ";
break;
case 5:
str+="Giovedì ";
break;
case 6:
str+="Venerdì ";
break;
case 7:
str+="Sabato ";
break;
}
str+=get(DAY_OF_MONTH);
switch(get(MONTH))
{
case 0:
str+=" Gennaio ";
break;
case 1:
str+=" Febbraio ";
break;
case 2:
str+=" Marzo ";
break;
case 3:
str+=" Aprile ";
break;
case 4:
str+=" Maggio ";
break;
case 5:
str+=" Giungo ";
break;
case 6:
str+=" Luglio ";
break;
case 7:
str+=" Agosto ";
break;
case 8:
str+=" Settembre ";
break;
case 9:
str+=" Ottobre ";
break;
case 10:
str+=" Novembre ";
break;
case 11:
str+=" Dicembre ";
break;
}
str+=get(YEAR)+ " Ore ";
str+=get(HOUR_OF_DAY)+ ":";
str+=get(MINUTE)+":";
str+=get(SECOND);
return str;
}
}

我使用 linux,时间正确设置为 10:19(意大利时)。但是现在(本地时间 10:20)我得到了 toString 方法的结果:
“Venerdì 2 Marzo 2012 Ore 13:21:10”不要看意大利语的东西,问题是小时:get(HOUR_OF_DAY) 返回 13 而不是 10 (22:21)。另外,还有更直观的类吗?我在 javadoc 中搜索过,除了 Calendar、GregorianCalendar、Date 和 Time,我没有找到其他任何东西。

最佳答案

如果你只想格式化日期,Java 有许多语言的内置格式化程序:

final DateFormat formatter = SimpleDateFormat.getDateTimeInstance(
DateFormat.FULL, DateFormat.FULL,
Locale.ITALY);
System.out.println(formatter.format(new Date()));

这打印:

venerdì 2 marzo 2012 22.32.20 CET

也许您可以跳过 Locale 以使用 JVM/OS 默认设置。在我的计算机上没有区域设置,它会打印:

piątek, 2 marzec 2012 22:32:20 CET

关于java - 公历 : can't get the local time hours,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9540574/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com