gpt4 book ai didi

java - AxisTime 与 Java 时间换算

转载 作者:太空宇宙 更新时间:2023-11-04 08:09:56 33 4
gpt4 key购买 nike

我正在尝试将 axis.types.Time 转换为 sql.Time,如下所示:

    org.apache.axis.types.Time axisTime = (org.apache.axis.types.Time) valore;
Calendar calendarTime = axisTime.getAsCalendar();
java.sql.Time jsqlT = java.sql.Time.valueOf( cal.get(cal.HOUR_OF_DAY) + ":" + cal.get(cal.MINUTE) + ":" + cal.get(cal.SECOND) );

但我的转换之间有一个小时的差异。这与日光有关吗?我该如何解决这个问题?

(输出:轴时间:20:45:00.000Z

日历:java.util.GregorianCalendar[time=-62167403700000,areFieldsSet=true,areAllFieldsSet=true,lenient=true,zone=sun.util.calendar.ZoneInfo[id="欧洲/柏林",offset=3600000,dstSavings=3600000,useDaylight=true,transitions=14 3,lastRule=java.util.SimpleTimeZone[id=欧洲/柏林,offset=3600000,dstSavings=3600000,useDaylight=true,startYear=0,startMode=2,startMonth=2,startDay=-1,startDayOfWeek=1,startTime=3600000,startTimeMode=2,endMode=2,endMonth=9,endDay=-1, endDayOfWeek=1,endTime=3600000,endTimeMode=2]],firstDayOfWeek=2,minimalDaysInFirstWeek=4,ERA=0,YEAR=2,MONTH=11,WEEK_OF_YEAR=1,WEEK_OF_MONTH=5,DAY_OF_MONTH=31,DAY_OF_YEAR=365,DAY_OF_WEEK=4,DAY_OF_WE EK_IN_MONTH=5,AM_PM=1,HOUR=9,HOUR_OF_DAY=21,MINUTE=45,SECOND=0,MILLISECOND=0,ZONE_OFFSET=3600000,DST_OFFSET=0]

SQLTIME 21:45:00

编辑:我通过使用字符串解决了这个问题...但是这个轴日期/时间对象对日光和时区不太友好,DateTime对象的麻烦更糟(再次,我强制解决方案忽略GMT/Daylights并使用字符串)

最佳答案

试试这个:

org.apache.axis.types.Time axisTime = (org.apache.axis.types.Time) valore;
Calendar calendarTime = axisTime.getAsCalendar();
java.sql.Time jsqlT = new java.sql.Time(calendarTime.getTimeInMillis());

这样您就不会遇到夏令时更改的问题。

关于java - AxisTime 与 Java 时间换算,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11397708/

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