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

SimpleDateFormat显示错误的本地时间

段干弘扬
2023-03-14
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss Z", Locale.getDefault());
        sdf.format(new Date());

第二个选项(来自Java SimpleDateFormat(“yyyy-mm-dd't'hh:mm:ss'z'”)将时区作为IST提供)

    SimpleDateFormat sdf2 = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss'Z'");
    sdf2.setTimeZone(TimeZone.getTimeZone("CEST"));

在这两种情况下,时间都错了。我的笔记本电脑或手机显示的不是当地时间,但输出时间是提前2小时。我怎么才能改变呢?我想有柏林(CEST)的当前时间也显示在我的电脑上。我感谢每一个评论。

暂时还没有答案

 类似资料:
  • 问题内容: 我已经编写了此示例程序,其中我想将日期转换为另一种格式。使用简单的日期格式时,我没有看到预期的日期。 我看到以下输出。第一种是使用简单的日期格式,第二种是手动翻译。 因此,如何使简单的日期格式输出与手动格式类似的值 问题答案: 看来您不能使用6位数字表示毫秒。您的程序关闭了11分17秒。660秒= 11分钟,您可以休息17秒。因此,它只能将您输入的内容从秒转换为分钟,因为它不能接受超过

  • 我想将我的时间戳转换为XXhours:YYminutes字符串。我的方法有时可以正常工作,除非它获得更大的值。例如, 193500000 -

  • 问题内容: 我一直在尝试隔离应用程序中的错误。我成功产生了以下“谜语”: 在Android API 7上 运行此代码时,我得到了注释中的值(是的,是的)。此行为取决于特定的Java实现。 我的问题是: 为什么s1不等于s2? 更重要的是, 为什么s1不正确? 虽然指向适当的时间点,但没有。Android的SimpleDateFormat实现中似乎存在一个错误。 问题1 的答案 : 请参阅Balus

  • 问题内容: 我不需要整个故事来澄清我的问题,所以我只显示代码(仅是示例)。我的结果怎么会有差异? 码 输出量 问题答案: 如果您在伦敦或巴黎,则时区为1970年1月1日GMT + 1。 由于@ARC在评论中解释的原因,英国于1968年2月18日至1971年10月31日使用了GMT + 1或UTC + 1 我可以转换很长时间而不会干扰任何时区吗? 将TimeZone设置为GMT。 版画

  • 问题内容: 当我尝试记录当前日期时: 要么 (在Swift 3中) 或任何日期对象,它显示错误的时间。例如,现在大约是16:12,但上面显示的是 我的日期在错误的时区吗?如何确定我的日期具有正确的时区? 为什么会这样,我该如何解决?如何在打印语句或调试器中轻松地在本地时区显示任意日期? (请注意,这个问题是一个“铃声”,因此我可以提供一个简单的Swift 3 / Swift 2 Date / NS

  • 我正在使用转换到新时区UTC+3,这等于EAT时区,但Postgres(9.1)显示错误的时间 (默认时区为斯德哥尔摩) 如果将JodaTime与两个时区一起使用,则显示相同的正确结果“2015-01-13 10:40:00”。