当前位置: 首页 > 知识库问答 >
问题:

在java代码中使用EST时区时的DST[副本]

麹高远
2023-03-14
import java.text.SimpleDateFormat;
import java.util.Date;
import java.util.TimeZone;

public class DateProgram {

    public static void main(String[] args) {
        TimeZone.setDefault(TimeZone.getTimeZone("EST"));
        String dateTime = new SimpleDateFormat("yyyyMMdd-HHmmss").format(new Date());
        System.out.println(dateTime);

    }
}

共有1个答案

朱毅
2023-03-14

使用现代java.time类来替代麻烦的旧遗留日期-时间类。

避免使用3-4个字母代码,如EST。这些不是实际的时区,不是标准化的,甚至不是唯一的!使用大陆/区域形式的实时区域名称。

ZoneId z = ZoneId.of( "America/Montreal" ) ;
ZonedDateTime zdt = ZonedDateTime.now( z ) ;

我建议您在生成字符串时考虑使用标准的ISO 8601格式,而不是您特有的格式。在生成/解析字符串时,java.time类默认使用标准格式。

DateTimeFormatter f = DateTimeFormatter.ofPattern( "uuuuMMdd-HHmmss" ) ;
String output = zdt.format( f ) ;
 类似资料:
  • 我有一个简单的问题: 输出:(我的时区是ICT) 问题是:日历在 DST 日返回此时区的错误时间。时区“美国/圣地亚哥”现在应该是UTC-3(参考:http://www.timeanddate.com/worldclock/chile/santiago)。它需要显示:

  • 问题内容: 如何获取我的python脚本,以检查是否现在使用DST将特定时区存储在变量中?我的服务器设置为UTC。所以我说例如 我想运行有关现在是否正在使用DST的查询,并让返回的结果为true或false。 问题答案: 替代方法是使用: 可以具有以下三个值之一:没有DST,没有DST和未设置时区。

  • 我正在做一个日历应用程序。在此中,来自不同时区的用户创建/查看事件。我想按照下面的方法将事件时间保存在UTC中,并在用户的本地时间中显示它们。注意:用户有他们喜欢的时区设置。 若要将事件开始时间保存为UTC时间戳: 获取用户时区中的事件开始时间: 上面使用的PHP API是否能处理所有区域的DST? 不同年份的DST时间本身会发生变化,PHP是如何获取这方面的信息的?我们需要升级PHP吗?如果是这

  • 有人能给我一个例子,我如何在下面的代码中使用Double吗?

  • 问题内容: 解决的问题 外部设备正在计算并发送非标准的2小时轮班时间戳,这使我非常困惑,并启动了该线程。时区 不会影响自己的时间戳 ,时区仅在以人类可读形式进行转换时适用。 我在UTC时区有时间戳记(距离unix纪元的秒数​​),没有DST(夏令时)。 我想要使​​用DST的“欧洲/布拉格”时区中的时间戳(距Unix纪元的秒数​​)。 我曾经以为unix时间戳不受时区限制,时区仅影响将时间戳转换为

  • 我们在本地时区(如EST、PST、CST等)的sql中有多列。我们希望将UTC时区中的所有这些时区转换为考虑到日光节省并将其保存到另一列。 我尝试了下面的查询,但它将UTC转换为当地时区(EST ),但我正在寻找EST到UTC时区。 选择CONVERT(日期时间,SWITCHOFFSET(日期时间字段,日期部分(TZOFFSET,时间区域“东部标准时间”的日期时间字段))