文档章节

Calendar TimeZone SimpleDateFormat

Hzhodor
 Hzhodor
发布于 05/22 19:16
字数 230
阅读 2
收藏 1

关于Calendar类的使用可参考:Java Calendar类的使用总结

获取日历(Calendar):java.util.Calendar#getInstance()

获取时区TimeZone:

TimeZone.getTimeZone("GMT+00:00"); 或:TimeZone.getTimeZone("UTC");
TimeZone.getTimeZone("GMT+08:00"); 或:TimeZone.getTimeZone("CTT"); 或:TimeZone.getTimeZone("Asia/Shanghai");

ZoneID可参考:java.time.ZoneId#SHORT_IDS

default TimeZone设定:

        1、java.util.TimeZone#setDefault(TimeZone zone)

        2、VM options:-Duser.timezone=UTC

语言环境Locale:java.util.Locale#SIMPLIFIED_CHINESE(中国大陆)

 

Calendar calendar = Calendar.getInstance();
Calendar calendar = Calendar.getInstance("UTC");
Calendar calendar = Calendar.getInstance(TimeZone.getTimeZone("GMT+08:00"));
Calendar calendar = Calendar.getInstance(TimeZone.getTimeZone("Asia/Shanghai"));
Calendar calendar = Calendar.getInstance(TimeZone.getTimeZone("CTT"));
Calendar calendar = Calendar.getInstance(TimeZone.getTimeZone("CTT"), Locale.SIMPLIFIED_CHINESE);

calendar.set(Calendar.YEAR, 2099);
calendar.get(Calendar.HOUR_OF_DAY); //可以获取传入TimeZone对应的时间
calendar.getTime(); //获取的依然是defaultTimeZone对应的时间
java.util.Calendar#getTime 源码:
public final Date getTime() {
    return new Date(getTimeInMillis());
}
因此,通过calendar.getTime()获取的依然是defaultTimeZone对应的时间

 

SimpleDateFormat转变时区:

DateFormat format = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
format.setTimeZone(TimeZone.getTimeZone("CTT"));
format.format(new Date());
format.format(calendar.getTime());

© 著作权归作者所有

Hzhodor
粉丝 1
博文 45
码字总数 6077
作品 0
私信 提问
Android 日期时间类

Unix时间戳在计算上最为方便和灵活,效率也高;而Date和Calendar则在一些具体的日期计算上更为便利。Date和Calendar自动根据手机所设置的时区来调整时间戳的,也就是该时区真实的时间戳Simpl...

CrazyManDF
2016/06/24
78
0
Java 日期和时间转换Class SimpleDateFormat

Date and Time Pattern Result "yyyy.MM.dd G 'at' HH:mm:ss z" 2001.07.04 AD at 12:08:56 PDT "EEE, MMM d, ''yy" Wed, Jul 4, '01 "h:mm a" 12:08 PM "hh 'o''clock' a, zzzz" 12 o'clock......

Erichkko
2015/09/02
123
0
读懂程序里的--时间

题外话,祝各位程序猿们中秋佳节快乐~~~O(∩_∩)O~。 追本溯源 历史 GMT 百度百科:格林威治时间 UTC 百度百科:协调世界时 两者比较: GMT:最初确立的世界标准时间,名字由来是因为英国的皇...

-悟空-
2015/09/27
223
0
Java中Calendar的使用方法

package cn.outofmemory.codes.Date; import java.util.Calendar; import java.util.Date; public class CalendarDemo { public static void main(String[] args) { Calendar calendar=Calen......

张欢19933
2016/02/23
37
0
Java不同时区(timezone)之间时间转换

版权声明:原创文章转载前请私信或者评论,一天之内回复。 https://blog.csdn.net/yangbodong22011/article/details/88930686 最近出现一个问题是这样的:我们的系统在国外打印的日志时间由于...

杨博东的博客
03/31
0
0

没有更多内容

加载失败,请刷新页面

加载更多

IT兄弟连 Java语法教程 Java语言的跨平台特性

什么是平台 Java是可以跨平台的编程语言,那么首先我们需要知道什么是平台,通常我们把CPU与操作系统的整体称为平台。 CPU大家都知道,是计算机的大脑,它既负责思维运算,又负责计算机中各种...

老码农的一亩三分地
2分钟前
0
0
http传值问题

这两天遇到一个问题 ,与一个渠道联调接口,http请求,展示ptf 的需求,服务方以一个二进制的方式返回。 当时我们在一开始开发的时候,我们按照读取文件的方式处理,本地存一个ptf 的方式 ,...

鬼才王
11分钟前
0
0
【面试】如果你这样回答“什么是线程安全”,面试官都会对你刮目相看

不是线程的安全 面试官问:“什么是线程安全”,如果你不能很好的回答,那就请往下看吧。 论语中有句话叫“学而优则仕”,相信很多人都觉得是“学习好了可以做官”。然而,这样理解却是错的。...

中关村的老男孩
11分钟前
4
0
5.01- Druid数据源配置

1、配置项 配置 缺省值 说明 name 无 配置这个属性的意义在于,如果存在多个数据源,监控的时候 可以通过名字来区分开来。如果没有配置,将会生成一个名字, 格式是:"DataSource-" + Syste...

静以修身2025
16分钟前
0
0
itop4412开发板-Linux内核的编译

本篇文章基于itop4412开发板 5.3.2.1源码目录 Linux 内核源码在光盘“06_源码_uboot 和 kernel”目录下,如下图所示。 5.3.2.2 编译器 内核的编译器和 uboot 的编译器一样,参考“5.3.1.2 编...

书白
20分钟前
1
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部