You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

时间戳转换异常求助:本地正常运行但评测端出现问题

本地运行正常但评测时出现时间戳转换问题

这是一个学校作业项目。我在本地运行程序时,所有功能均正常,但评测人员遇到了时间戳转换问题。

我已多次测试程序,每次结果均符合预期,无法复现评测人员遇到的问题。查阅了时间戳、时区、本地化及服务器相关问题,但未找到有效解决办法,恳请各位提供帮助!

相关代码

TimeUtil 工具类

public abstract class TimeUtil {

    private static final Locale loc = Locale.getDefault();
    private static final ZoneId localZoneId = ZoneId.systemDefault();
    private static final ZoneId utcZoneId = ZoneId.of("Etc/UTC");
    private static final ZoneId estZoneId = ZoneId.of("America/New_York");
    public static final DateTimeFormatter dtf = DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss");
    public static final LocalTime openHour = LocalTime.of(8, 0, 0);
    public static final LocalTime closeHour = LocalTime.of(22, 0, 0);


    public static LocalDateTime utcNow(){ return LocalDateTime.now(utcZoneId); }


    public static LocalDateTime localNow(){ return LocalDateTime.now(localZoneId); }


    public static LocalDateTime utcToLocal(LocalDateTime ldt){ return ldt.atZone(utcZoneId).withZoneSameInstant(localZoneId).toLocalDateTime(); }


    public static LocalDateTime localToUtc(LocalDateTime ldt) { return ldt.atZone(localZoneId).withZoneSameInstant(utcZoneId).toLocalDateTime(); }


    public static LocalDateTime utcToEst(LocalDateTime ldt) { return ldt.atZone(utcZoneId).withZoneSameInstant(estZoneId).toLocalDateTime(); }


    public static LocalDateTime localToEst(LocalDateTime ldt) { return ldt.atZone(localZoneId).withZoneSameInstant(estZoneId).toLocalDateTime(); }
}

时间转换调用代码片段

LocalDateTime start = TimeUtil.localToUtc(LocalDateTime.of(startDate.getValue() ,LocalTime.of(Integer.parseInt(startHour.getSelectionModel().getSelectedItem()),
        Integer.parseInt(startMin.getSelectionModel().getSelectedItem()), 0)));
LocalDateTime end = TimeUtil.localToUtc(LocalDateTime.of(endDate.getValue(), LocalTime.of(Integer.parseInt(endHour.getSelectionModel().getSelectedItem()),
        Integer.parseInt(endMin.getSelectionModel().getSelectedItem()), 0)));

if (TimeUtil.isValid(Integer.parseInt(apptId.getText()), start, end)) {
    
}

内容的提问来源于stack exchange,提问作者Forrest Young

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.12 08:10:47