我正在尝试使用Java日期和日历来实现从一个时区到另一个时区的简单转换。我正在尝试运行以下代码
Calendar instance = Calendar.getInstance(TimeZone.getTimeZone("Europe/London"));
Date date = instance.getTime();
System.out.println(date);
GregorianCalendar instance2 = new GregorianCalendar(TimeZone.getTimeZone("Europe/Athens"));
instance2.setTime(instance.getTime());
System.out.println(instance2.getTime());
但这仍然返回相同的日期,而不是+1小时…整个问题似乎微不足道,但我找不到任何简单的答案。在此先感谢您的帮助。
当您使用来打印日期时System.out.println(date); or System.out.println(instance2.getTime());
,Date
返回的instance2.getTime()
是,TimeZone independent
并且始终以本地时区打印日期。
相反,您可能要使用DateFormat/SimpleDateFormat
:
DateFormat formatter= new SimpleDateFormat("MM/dd/yyyy HH:mm:ss Z");
formatter.setTimeZone(TimeZone.getTimeZone("Europe/London"));
System.out.println(formatter.format(date));
formatter.setTimeZone(TimeZone.getTimeZone("Europe/Athens"));
System.out.println(formatter.format(instance2.getTime()))
我以UTC long格式存储日期,并以用户时区显示。但当我试图只存储几天而没有时间时,它会误导到不同的日期。 例如:2016年5月05/06/2016 (06日的调度事件)。此日期对于所有没有时区的地区都是唯一的。如果来自GMT 5:30时区的用户试图在2016年6月5日添加事件,则ISO-8601格式为2016-05-05T16:00:00.000Z,毫秒1462464000000。 然后来自G
周日->明谷-0 周一->赛宁-1 周二->Selasa-2 帮我谢谢
问题内容: 我已经尝试过一百万种不同的方法,但是没有用。任何帮助将非常感激。 上面的方法不起作用。 基本上,我想做的是获取纪元时间并将其转换为澳大利亚时间。我的当地时间是+05.30,但是我当然不希望这成为促成这种转化的因素。 编辑- 当我运行您的确切代码时,输出 时代1318388699000 2011年10月12日星期三08:34:59 GMT + 05:30 12/10/2011 03:
问题内容: 有谁知道如何将JS dateTime转换为MySQL datetime?还有一种方法可以向JS日期时间添加特定的分钟数,然后将其传递给MySQL日期时间? 问题答案: 尽管JS确实拥有足够的基本工具来执行此操作,但它相当笨拙。
问题内容: 是否有一个内置的转换方法为在Python,例如获得在指定日期的午夜?相反的转换很容易:有一个方法。 我真的必须手动打电话吗? 问题答案: 您可以使用;现在,您创建一个初始化为午夜的对象。