所以我试图在命令行中获取一个日期作为字符串并将其转换为毫秒,但它不断增加五个小时。任何想法为什么?

So I'm tring to get a date as a string at the command line and convert it into milliseconds but it keeps adding five hours. Any ideas why?

此代码有效,但当它将输入转换为毫秒时,它会增加五个小时。有解决办法吗?

    ArrayList<String> timeList = new ArrayList<String>();
    Scanner in = new Scanner(System.in);
    System.out.println("Please enter time you arrived (HH:mm:ss): ");
    timeList.add(in.next());
    SimpleDateFormat format = new SimpleDateFormat("HH:mm:ss"); 
    String arriveTime = timeList.get(0);
    try{
        Date date1 = format.parse(arriveTime);
        long finalTime = date1.getTime();
    }catch (Exception e) {
        System.out.println("An error occurred");
    }

我猜你是在东部时区,并且混淆了 EDT 和 GMT。