获取本地时间:
String time1 = new SimpleDateFormat("hh:mm:ss").format(new Date());
获取时区“GMT+8”的时间:
String time2 = cal.get(Calendar.HOUR_OF_DAY) + ":" + Calendar.MINUTE + ":" + Calendar.SECOND;
如果“GMT+8”就是北京时间,为什么time1和time2又不相等呢?
下面附上测试代码和测试结果:
Calendar cal = new GregorianCalendar(TimeZone.getTimeZone("GMT+8"));
String time1 = new SimpleDateFormat("hh:mm:ss").format(new Date());
String time2 = cal.get(Calendar.HOUR_OF_DAY) + ":" + Calendar.MINUTE + ":" + Calendar.SECOND;
System.out.println("time1=" + time1);
System.out.println("time2=" + time2);
time1=10:54:55
time2=10:12:13
今天查明原因了,上面代码第三行有错误,应该是:
String time2 = cal.get(Calendar.HOUR_OF_DAY) + ":" + cal.get(Calendar.MINUTE) + ":" + cal.get(Calendar.SECOND);
另外,要求已知时区的时间,应该像下面这样:
public static String getLocalDatetimeString(String local) {
Calendar cal = new GregorianCalendar(TimeZone.getTimeZone(local));
cal.setTimeInMillis(Calendar.getInstance().getTimeInMillis());
String date = cal.get(Calendar.YEAR) + "-" + (cal.get(Calendar.MONTH) + 1) + "-" + cal.get(Calendar.DAY_OF_MONTH);
String time = cal.get(Calendar.HOUR_OF_DAY) + ":" + cal.get(Calendar.MINUTE) + ":" + cal.get(Calendar.SECOND);
return date + " " + time;
}
这样调用:
getLocalDatetimeString("GMT+8");
分享到:
相关推荐
在网页设计中,显示实时的北京时间(即中国标准时间GMT+8)是常见的需求,尤其对于国内用户来说,这样的功能可以方便他们无需手动调整时区就能看到准确的时间。本篇文章将详细讲解如何使用JavaScript实现这一功能。 ...
5. **日期和时间API**:在编程中,通常会使用系统提供的日期和时间API来进行时间操作,如获取当前时间、设置时区、进行时间转换等。对于Windows平台,可以使用`GetSystemTimeAsFileTime`和`FileTimeToSystemTime`等...
在UTC和北京时间的转换中,关键在于理解时区差异。由于北京位于东八区,所以要将UTC时间转换为北京时间,只需在UTC时间戳基础上加8小时;反之,若要将北京时间转换为UTC,需减去8小时。 下面是一个简单的C语言源码...
北京位于东八区,意味着它的本地时间比UTC快8小时。例如,如果在北京发送一封电子邮件,Date域显示"09:45:28 +0800",这表明邮件是在当地时间为2010年6月13日早上9点45分28秒发出的。将此时间转换为UTC,我们需要...
【北京时间】指的是中国所在的东八区的本地时间,比UTC时间快8小时。在电子邮件的Date域中,会以+0800表示,意味着如果邮件发送时间是+0800,即表明该邮件是在东八区时间发出的。 【时区转换】全球被划分为24个时区...
1. 时间和日期类的使用:在C#中,DateTime类用于表示日期和时间,TimeZoneInfo类则用于处理不同时区之间的转换。 2. UTC时间的处理:了解UTC时间的概念,以及如何在C#中进行UTC时间的计算和格式化。 3. 用户界面设计...
然后调用`getLocalDatetimeString("GMT+8")`即可获取指定时区的本地时间。 对于这三个方法,可以在`main`方法中进行测试,以便验证它们的功能。在`TimeTest`类中,可以添加`method1()`, `method2()`, 和 `method3()...
例如,北京位于东八区,比格林尼治早8小时,所以北京的时区为GMT+8。 在建立多时区应用时,需要考虑的关键点包括: 1. **数据存储**:系统需要存储每个时区的信息,包括时区名称、偏移量、缩写等。这通常通过...
例如,在Python中,你可以使用`datetime`模块来处理日期和时间,`pytz`库来处理时区转换,或者`gpsd`库来获取GPS数据。 总结一下,GPS UTC时间转换函数是IT领域中用于处理和转换全球定位系统时间的工具,它涉及到...
这将返回当前的本地日期和时间,基于默认的时区差(此处为8小时)。 但是,如果你的数据库中有许多已经使用`GETDATE()`函数的地方,你需要找到并替换这些地方。`GETDATE()`函数返回的是服务器的当前UTC时间。你可以...
在JavaScript中,可以使用`getFullYear()`, `getMonth()`, `getDate()`, `getHours()`, `getMinutes()`, `getSeconds()`等方法获取日期和时间部分,并通过`preZero()`函数补零以保持两位数格式。 8. **异常处理**:...
1. **解析时间戳**:根据给定的长整型数值,将其转化为一个日期和时间对象。这通常涉及到对时间戳的数学运算,例如在Python中,可以使用`datetime.datetime.fromtimestamp()`函数。 2. **处理时区差异**:UTC时间是...
例如,对于在中国使用北京时间(GMT+08:00)的用户,从数据库读取时间会发现比实际时间少8个小时。为了解决这个问题,我们可以采取一些策略在存储和读取时间时进行时区转换。 首先,了解关键概念——格林威治时间...
在上面的配置中,`%date{yyyy-MM-dd HH:mm:ss.SSS}{GMT+8}` 是关键部分,用于指定日期时间的格式和时区。`{yyyy-MM-dd HH:mm:ss.SSS}` 表示日期时间的格式,其中 `yyyy` 代表四位年份,`MM` 代表两位月份,`dd` 代表...
安装过Mac系统后如果与windows双系统的话,那么由于Mac...所以如果你在MacOSX和Windows都选北京时间作为本地时区是,一旦连到互联网上,同步过时间后,就会造成时间的不一致。这软件就是用来同步mac与Windows系统的时间
日历时间,通常指的是我们日常生活中使用的日期和时间,比如“2023年4月15日14时30分”。这种格式便于人类理解,但计算机处理时更倾向于使用统一的时间标准,例如UTC(协调世界时)。UTC是国际时间标准,它基于原子...
C语言标准库提供了一些与时区相关的函数,如`tzset()`来设置时区,`timezone`和`daylight`全局变量分别表示本地时间与UTC之间的偏移秒数和是否夏令时。 7. **获取北京时间**: 要获取准确的北京时间,除了上述基本...
例如,美国东部时间比UTC慢5小时,而中国北京则快8小时。 在C/C++中,我们可以使用`<ctime>`头文件中的函数来处理时间。例如,`gmtime()`函数用于将Unix时间戳转换为UTC结构,而`localtime()`函数则将Unix时间戳...
因此,如果用户在 MacOSX 和 Windows 都选北京时间作为本地时区,一旦连到互联网上,同步过时间后,就会造成时间的不一致。 解决方法是修改 Windows 的注册表,将 Windows 的缺省对待 CMOS 的方式改成 UTC,也就是...