DateFormat 与 TimeZone

2024-01-24 04:38
文章标签 timezone dateformat

本文主要是介绍DateFormat 与 TimeZone,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

DateFormat 是日期/时间格式化子类的抽象类,它的实现类提供了很多种日期格式化的方法对日期解析和格式化。
TimeZone 表示时区偏移量,接受时区ID,例如:Asia/Shanghai或者GMT+8,根据时区ID获取时区偏移量

DateFormat提供一个方法,setTimeZone(TimeZone zone),接受时区偏移量作为传入参数,为DateFormat日历设置时区,默认情况使用Locale.getDefault()中的本地时区。

SimpleDateFormat timeZoneFormat = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
参考public SimpleDateFormat(String pattern){this(pattern,Locale.getDefault());}


DateFormat常用的parse(String source)和format(Date date) 方法,默认情况下使用本地时区进行解析和格式化时间,如果在解析或者格式化之前,强制设置了时区,则采用设置好的时区进行解析和格式化时间。

SimpleDateFormat timeZoneFormat = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
timeZoneFormat.setTimeZone(TimeZone.getTimeZone("Asia/Shanghai"));
timeZoneFormat.parse("2011-06-29 14:44:25"); //解析成"Asia/Shanghai"时区时间
timeZoneFormat.format(new Date()); // 格式化成"Asia/Shanghai"时区时间


以format为例,format接受[size=x-large][b]本地时间[/b][/size]作为传入参数,计算DateFormat设置的时区与本地时区的时间偏移量(即时差),最终将本地时间格式化成指定时区的时间(parse亦然)

这篇关于DateFormat 与 TimeZone的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/638558

相关文章

解决PHP Warning: strftime(): It is not safe to rely on the system's timezone set

当运行一些程序时,在httpd日志中会有如下警告日志: PHP Warning:  strftime(): It is not safe to rely on the system's timezone settings. You are *required* to use the date.timezone setting or the date_default_timezone_set(

使用ThreadLocal保证DateFormat线程安全

大家都知道DateFormat是线程非安全的, 一般在多线程环境下, 必须为每一次日期时间的转换创建一个DateFormat, 这里有一个更高效的做法: /*** 使用ThreadLocal以空间换时间解决SimpleDateFormat线程安全问题。* 创建一个ThreadLocal类变量,这里创建时用了一个匿名类,覆盖了initialValue方法,主要作用是创建时初始化实例。* @auth

【JavaSE ⑧】P219 ~ 225 Date类‘’DateFormat类转化Date和字符串;Calendar类获得日历中某值,修改日历,日历转日期

目录 日期时间类1 Date类概述常用方法 2DateFormat类构造方法格式规则常用方法parse方法format方法 3 Calendar类概念获取方式常用方法get/set方法add方法getTime方法 ● 练习1.判断Date不同参数构造的输出2. 用日期时间相关的API,计算一个人已经出生了多少天。3. 获取Calendar对象,输出日历当前年,月,日4. 把日历转换为日期

cron.timezone

系统 date 数据库 show timezone 插件 show cron.timezonealter system set cron.timezone='PRC';show cron.timezone

Java常用类之Date和DateFormat用法

Java常用类之Date和DateFormat用法 ---20150802 1.Date时间类(java.util.Date) -->在标准Java类库中包含一个Date类。它的对象表示一个特定的瞬间,精确到毫秒 -->Java中时间的表示说白了也是数字,是从:标准纪元1970.1.1 0点开始到某个时刻的毫秒数,类型为long。 此类学习之建议----看源码

让DateFormat多线程安全

"DateFormat 不是同步的。建议为每个线程创建独立的格式实例。如果多个线程同时访问一个格式,则它必须保持外部同步。"----摘自JDK文档中文版 首先让我们看看一个简单的方法 public static Date toDate(String dateStr) {SimpleDateFormat p= new SimpleDateFormat("yyyyMMdd");try{re

【Java】Date类与DateFormat类方法的使用

Date类 两种方法获得系统当前时间的毫秒数,一种是System.currentTimeMillis(),另一种是Date类对象调用getTime()方法 /*java.util.Date:表示日期和时间的类类 Date 表示特定的瞬间,精确到毫秒。毫秒:千分之一秒 1000毫秒=1秒特定的瞬间:一个时间点,一刹那时间2088-08-08 09:55:33:333 瞬间2088-08-08 0

mapstruct的用法-dateFormat

可先阅读:mapstruct的用法-qualifiedByName使用的类都是这里的。 1 源类 public class AreaPO {private String cityName;private Integer haveAir;private Double pm25;private String pm10Str;private Date updatedTime; 2 目标类 pub

It is not safe to rely on the system's timezone settings错误

在写php程序中有时会出现这样的警告: PHP Warning: date(): It is not safe to rely on the system's timezone settings. You are *required* to use the date.timezone setting or the date_default_timezone_set() function. I

Nodejs TimeZone 相关设置(修改时区)

转自 http://blog.csdn.net/u010668495/article/details/50817136 这篇文章写于2016年3月,本文叙述的方法在Node新版本中已经无法得到预期结果,请看文末的解决方法 旧版本(0.12/5.3.0) 最近遇到了时区设置的问题 在Nodejs中,取当前时间(GMT格式)可以使用Date var GMTDate = new Date();/