Java 基于给定时区(本地时区)获取时间(以毫秒为单位)

Java 基于给定时区(本地时区)获取时间(以毫秒为单位),java,date,time,timezone,unix-timestamp,Java,Date,Time,Timezone,Unix Timestamp,这似乎是个错误的问题,但请听我说完。当我调用System.currentTimeMillis()时,它会给我秒数,当我从在线毫秒到日期转换器转换为人类可读的格式时,它会给我GMT或UTC时间,但不会给我本地时间。有没有办法以毫秒为单位获取当前本地时间,因为我在在线转换器中输入本地时间时,会看到millsec值发生变化 总而言之,我的问题是以毫秒为单位获取当前本地时间,这与我在java中使用System.currentTimeMillis()函数获取的时间有一些不同。您可以使用它,它给出了添加到U

这似乎是个错误的问题,但请听我说完。当我调用System.currentTimeMillis()时,它会给我秒数,当我从在线毫秒到日期转换器转换为人类可读的格式时,它会给我GMT或UTC时间,但不会给我本地时间。有没有办法以毫秒为单位获取当前本地时间,因为我在在线转换器中输入本地时间时,会看到millsec值发生变化

总而言之,我的问题是以毫秒为单位获取当前本地时间,这与我在java中使用System.currentTimeMillis()函数获取的时间有一些不同。

您可以使用它,它给出了添加到UTC以获取本地时间的时间量(以毫秒为单位)。大概

long date = System.currentTimeMillis();
int offset = TimeZone.getDefault().getOffset(date);
System.out.printf("%d + %d = %d%n", date, offset, date + offset);