我已编写此代码将当前系统日期和时间转换为其他时区。我没有收到任何错误,但没有得到预期的输出。就像我在特定时间执行程序一样。我的输出是::
当前 印度 时间是::Fri Feb 24 16:09:23 IST 2012
:: 中部标准时间 的日期和 时间 是::Sat Feb 25 03:39:23 IST 2012
根据 CST时区 的实际时间是::
Friday, 24 February 4:39:16 a.m(GMT - 6:00)
所以有一些 时间间隔 。而且我不知道为什么会这样。任何帮助将不胜感激..代码是::
package MyPackage;
import java.text.DateFormat;
import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.Calendar;
import java.util.Date;
import java.util.TimeZone;
public class Temp2 {
public static void main(String[] args) {
try {
Calendar currentdate = Calendar.getInstance();
String strdate = null;
DateFormat formatter = new SimpleDateFormat("dd-MM-yyyy HH:mm:ss");
strdate = formatter.format(currentdate.getTime());
TimeZone obj = TimeZone.getTimeZone("CST");
formatter.setTimeZone(obj);
//System.out.println(strdate);
//System.out.println(formatter.parse(strdate));
Date theResult = formatter.parse(strdate);
System.out.println("The current time in India is :: " +currentdate.getTime());
System.out.println("The date and time in :: "+ obj.getDisplayName() + "is ::" + theResult);
} catch (ParseException e) {
e.printStackTrace();
}
}
}
通过网络。可以用谷歌搜索。无论如何,这是一个适合您的版本(从此处进行无耻的挑选和修改):
Calendar calendar = Calendar.getInstance();
TimeZone fromTimeZone = calendar.getTimeZone();
TimeZone toTimeZone = TimeZone.getTimeZone("CST");
calendar.setTimeZone(fromTimeZone);
calendar.add(Calendar.MILLISECOND, fromTimeZone.getRawOffset() * -1);
if (fromTimeZone.inDaylightTime(calendar.getTime())) {
calendar.add(Calendar.MILLISECOND, calendar.getTimeZone().getDSTSavings() * -1);
}
calendar.add(Calendar.MILLISECOND, toTimeZone.getRawOffset());
if (toTimeZone.inDaylightTime(calendar.getTime())) {
calendar.add(Calendar.MILLISECOND, toTimeZone.getDSTSavings());
}
System.out.println(calendar.getTime());
问题内容: 具体来说,给定服务器的时区(系统时间角度)和时区输入,我如何计算系统时间,就像它在那个新时区中一样(无论夏时制如何)? 问题答案: 如果知道您的原始时区和要将其转换为的新时区,那么结果将非常简单: 为当前时区和新时区都创建一个对象,例如。如果您不知道时区的官方名称,只需拨打以下电话即可找到所有官方时区的列表 呼叫使用当前时区的pytz对象与你的日期时间/时间戳输入到它定位到当前时区。例
问题内容: 如何将这样的日期(在时区中)转换为时区?确保夏令时能正确处理? 问题答案: 使用和。
问题内容: 基本上,我需要的是一个脚本,该脚本在提供时间和时区时可以返回另一个时区中的时间。 我的主要问题是: 从哪里获取GMT的时间偏差-是否有公共数据库可用于此? 如何也考虑夏时制(DST)的差异。 如何将其全部包装到PHP类中?或者是否已有这样的类? 问题答案: format('Y-m-d H:i:sP') . "\n"; 上面的示例将输出: 编辑:就像Pekka所说的:DateTime类从
问题内容: 法国说如何将时区中的当前时间(日期时间)转换为另一个时区?我在SO中环顾四周,但没有找到任何可以帮助我的帖子。我正在使用SQL Server 2008。 问题答案: 在这里检查
问题内容: 我正在寻找一种将一个时区的日期转换为另一个时区的函数。 它需要两个参数, 日期(格式为“ 2019/04/10 10:10:30 +0000”) 时区字符串(“亚洲/雅加达”) 是否有捷径可寻? 问题答案: var aestTime = new Date().toLocaleString(“en-US”, {timeZone: “Australia/Brisbane”});
这里是一个测试用例,它生成的一个结果是IST,另一个结果是GMT。我认为这两种情况下都应该只生成GMT。