当前位置: 首页 > 面试题库 >

在Java中获取当前时区的日期

丌官运诚
2023-03-14
问题内容

过去几个小时以来,我一直在网上搜索以获取系统时区中的日期时间。

当我使用calendar.getTimezone.getDefaultName时,它总是返回我格林尼治标准时间。(理想情况下,它应该返回我当前的时区,即IST)。我正在尝试将此字符串(“格林尼治标准时间”)“
2014-02-14T06:04:00:00”转换为我的时区datetime。它总是在格林尼治标准时间同时返回我。

我所看到的是,每个人都建议使用时区。即

dateFormatter.setTimezone("any_arbitary_timezone");

关键是我的应用程序将在不同的地理位置使用。我无法将其设置为特定的时区。应该将其设置为系统时区,以便可以显示用户当前所在的时区


问题答案:

这是一种获取TimeZone与您本地系统时钟的偏移量匹配的ID的方法,

Calendar cal = Calendar.getInstance();
long milliDiff = cal.get(Calendar.ZONE_OFFSET);
// Got local offset, now loop through available timezone id(s).
String [] ids = TimeZone.getAvailableIDs();
String name = null;
for (String id : ids) {
  TimeZone tz = TimeZone.getTimeZone(id);
  if (tz.getRawOffset() == milliDiff) {
    // Found a match.
    name = id;
    break;
  }
}
System.out.println(name);


 类似资料:
  • 将选定时区中的当前时间作为日期对象的最佳方法是什么。我使用下面的代码在react Native中获取选定时区的当前时间。 例如new Date().toLocaleString('en-us',{timezone:'indian/christmas'})

  • 问题内容: 我有一个可在JavaScript中显示当前日期和时间的脚本,但这始终是错误的。这是代码: 它应该打印并打印 有什么帮助吗?谢谢 问题答案: 返回一个从零开始的数字,以便获得正确的月份,您需要将其加1,因此调用in可能会返回而不是。 因此,在您的代码中,我们可以用来输出正确的值。此外: 返回月中的某天 < -这是您想要的*那一天 * 是对象的单独方法,它将返回代表星期几(0-6)等的整数

  • 问题内容: 如何获得Redis中嵌入的Lua中的当前日期/时间? 我需要采用以下格式-YYYY-MM-DD,HH:MM:SS 尝试使用os.date(),但无法识别。 问题答案: Redis的Lua沙箱只有少数几个库,并不是其中之一。 您可以像这样从Lua 呼叫Redis : 但是,您将需要找到一种将纪元转换为所需格式的方法,并且还要注意,它将阻止脚本执行任何写操作(因为这是不确定的命令)。 更新

  • 问题内容: 要插入到列中。我正在使用 数据库。我的问题是: SQL中有可用的功能吗?或者 它取决于实现,因此每个数据库对此都有自己的功能? MySQL中可用的功能是什么? 问题答案: 完整答案: 1. SQL中有可用的功能吗? 是的,SQL 92规范,97年10月,第pg。171第6.16节指定了以下功能: 2.它是依赖于实现的,因此每个数据库对此都有自己的功能吗? 每个数据库都有其自己的实现,但

  • 问题内容: 有人知道MySQL中是否有这样的功能吗? 更新 这不会输出任何有效的信息: 或者也许MySQL本身不知道确切使用了什么,那很好,我们可以在这里介入,只要我能获得不像… 问题答案: 从手册(第9.6节): 可以按以下方式检索全局时区和特定于客户时区的当前值: 编辑如果MySQL设置为系统时区的从属,则以上内容将返回,没有帮助。由于您使用PHP,如果从MySQL的答案是,你可以接着问什么时

  • 我的程序中有这5个按钮:星期一、星期二、星期三、星期四和星期五,它们在我的菜单屏幕上。我现在想要的是,当我的程序启动和我的菜单屏幕打开时,按钮包含的日子+一天的日期。 例如,今天我们是5月4日(星球大战快乐日!)按钮应该是这样的: 星期一04/30星期二05/01星期三05/02星期四05/03星期五05/04 但是当我打开下个星期一的菜单屏幕时,它应该是这样的:星期一05/07星期二05/08星