导航:首页 > 编程语言 > javadatetimezone

javadatetimezone

发布时间:2025-10-19 17:05:34

json格式数据 "Time":"\/Date(1341417600000+0800)\/" 时间转换

1341417600000 是自格林威治标准时间 1970 年 1月 1 日 0:00:00 后经过的时间,以毫秒为单位。0800是时区。
我给你个用毫秒数和时区设置日期的例子。
import java.util.Calendar;
import java.util.Date;
import java.util.TimeZone;
public class L {
public static void main(String[] args) {
long l=1341417600000l;
TimeZone zone=TimeZone.getTimeZone("GMT+0800");
Calendar c=Calendar.getInstance(zone);
c.setTimeInMillis(l);
Date d=c.getTime();
System.out.println(d);
System.out.println(zone);
}
}

运行结果:
Thu Jul 05 00:00:00 CST 2012
sun.util.calendar.ZoneInfo[id="GMT+08:00",offset=28800000,dstSavings=0,useDaylight=false,transitions=0,lastRule=null]

⑵ java时间转换 0点被转化成24点

请使用 SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss ");
而不是回答 SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd kk:mm:ss ");

⑶ java DateFormat类的.setTimeZone(TimeZone zone)怎样使用

setTimeZone
publicvoidsetTimeZone(TimeZonezone)
为此DateFormat对象的日历设置时区。

参数:
zone-给定的新时区。

TimeZone

getDefault
()
获取此主机的默认TimeZone。默认TimeZone的来源可能随实现的变化而变化。

返回:
默认的TimeZone。
另请参见:
setDefault(java.util.TimeZone)
getTimeZone
(StringID)
获取给定ID的TimeZone。

参数:
ID-TimeZone的ID,要么是缩写(如"PST"),要么是全名(如"America/Los_Angeles"),要么是自定义ID(如"GMT-8:00")。注意,对缩写的支持只是出于JDK1.1.x兼容性的考虑,因此应该使用全名。
返回:
指定的TimeZone,如果给定的ID无法理解,则返回GMT区域。
DateFormatdateFormat=newSimpleDateFormat();
//dateFormat.setTimeZone(TimeZone.getDefault());
dateFormat.setTimeZone(TimeZone.getTimeZone("EET"));
System.out.println(dateFormat.format(newDate()));

⑷ 请教关于linux下java类DateFormat的使用

1:DateDemo1类

[java] view plain
/*
* 取得系统的时间
*/
public class DateDemo1 {
public static void main(String args[]) {
System.out.println(System.currentTimeMillis());

}

输出为:1311060393171
执行结果会显示从1970年1月1日开始到取得系统时间为止所经过的毫秒数,例如1115346430703这个数字,但这样的数字没有人确切了解它的意 义是什么,您可以使用Date类别来让这个数字变的更有意义一些

2:DateDemo2类

[java] view plain
public class DateDemo2 {
@SuppressWarnings("deprecation")
public static void main(String args[]) {
Date date = new Date();

System.out.println("date.toString: " + date.toString());
System.out.println("date: " + date.getDate());
System.out.println("day: " + date.getDay());
System.out.println("hour: " + date.getHours());
System.out.println("minutes: " + date.getMinutes());
System.out.println("month: " + (date.getMonth() + 1));
System.out.println("seconds: " + date.getSeconds());
System.out.println("time: " + date.getTime());
System.out.println("timezone: " + date.getTimezoneOffset());
System.out.println("year: " + (date.getYear() + 1900));

Calendar calendar = Calendar.getInstance();
int year = calendar.get(Calendar.YEAR);
int month = calendar.get(Calendar.MONTH) + 1;
int day = calendar.get(Calendar.DATE);
int hour = calendar.get(Calendar.HOUR);
int minute = calendar.get(Calendar.MINUTE);
int second = calendar.get(Calendar.SECOND);

System.out.println("----------Calendar-------");
System.out.println("year: " + year);
System.out.println("month: " + month);
System.out.println("day: " + day);
System.out.println("hour: " + hour);
System.out.println("minute: " + minute);
System.out.println("second: " + second);

}
}
用date获得时间的值,如时、分、秒、月、日、年得方法已经过时,需要改用Calendar的方法来获取时间的值

输出结果为:

[java] view plain
date.toString: Tue Jul 19 15:32:42 CST 2011
date: 19
day: 2
hour: 15
minutes: 32
month: 7
seconds: 42
time: 1311060762362
timezone: -480
year: 2011
----------Calendar-------
year: 2011
month: 7
day: 19
hour: 3
minute: 32
second: 42

3:DateDemo3类

[java] view plain
public class DateDemo3 {
public static void main(String args[]) {
Date date = new Date();

/*
* DateFormat会依电脑上的区域设定显示时间格式,EE表示星期,MM表示月份、dd表示日期,而yyyy是西元,每个字元的设定都各有其意义
* 从Date-->String
*/
DateFormat dateFormat = new SimpleDateFormat("EE-MM-dd-yyyy");
System.out.println(dateFormat.format(date));

DateFormat format1 = new SimpleDateFormat("yyyy-MM-dd");
System.out.println(format1.format(date));

DateFormat format2 = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
System.out.println(format2.format(date));

/*
* 从String-->Date
*/
String dateStr = "2011-7-19";
try {
Date dateTrans = format1.parse(dateStr);
//System.out.println(dateTrans.toString());
System.out.println(dateTrans.toLocaleString()); //转换为本地的形式
} catch (ParseException e) {
e.printStackTrace();
}

}
}
使用DateFormat来格式化日期数据,上面部分为从Date-->String,下面的部分为从String-->Date

输出结果为:

[java] view plain
星期二-07-19-2011
2011-07-19
2011-07-19 15:33:27
2011-7-19 0:00:00

4:DateDemo4类

[java] view plain
public class DateDemo4 {

public static void main(String[] args) {

Date date = new Date();
DateFormat shortFormat = DateFormat.getDateTimeInstance(DateFormat.SHORT, DateFormat.SHORT);
DateFormat mediumFormat = DateFormat.getDateTimeInstance(DateFormat.MEDIUM, DateFormat.MEDIUM);
DateFormat longFormat = DateFormat.getDateTimeInstance(DateFormat.LONG, DateFormat.LONG);
DateFormat fullFormat = DateFormat.getDateTimeInstance(DateFormat.FULL, DateFormat.FULL);

System.out.println(shortFormat.format(date));
System.out.println(mediumFormat.format(date));
System.out.println(longFormat.format(date));
System.out.println(fullFormat.format(date));

}

}

输出结果为:

[java] view plain
11-7-19 下午3:33
2011-7-19 15:33:54
2011年7月19日 下午03时33分54秒
2011年7月19日 星期二 下午03时33分54秒 CST

5:DateDemo5类

[java] view plain
public class DateDemo5 {
public static void main(String args[]) {
Date date = new Date();

Locale locale = new Locale("en", "US");

DateFormat shortDateFormat = DateFormat.getDateInstance(DateFormat.SHORT, locale);
DateFormat mediumDateFormat = DateFormat.getDateInstance(DateFormat.MEDIUM, locale);
DateFormat longDateFormat = DateFormat.getDateInstance(DateFormat.LONG, locale);
DateFormat fullDateFormat = DateFormat.getDateInstance(DateFormat.FULL, locale);

System.out.println(shortDateFormat.format(date));
System.out.println(mediumDateFormat.format(date));
System.out.println(longDateFormat.format(date));
System.out.println(fullDateFormat.format(date));

}
}

输出结果为:

[java] view plain
7/19/11
Jul 19, 2011
July 19, 2011
Tuesday, July 19, 2011

⑸ Java中如何设置Date对象的年月日

包。在这个包中,Java提供了一些实用的方法和数据结构。例如,Java提供日期(Data)类、日历(Calendar)类来产生和获取日期及时间,提供随机数(Random)类产生各种类型的随机数,还提供了堆栈(Stack)、向量(Vector) 、位集合(Bitset)以及哈希表(Hashtable)等类来表示相应的数据结构。
图1.1给出了java.util包的基本层次结构图。下面我们将具体介绍其中几个重要的类。
┌java.util.BitSet
│java.util.Calendar
│ └java.util.GregorianCalendar
│java.util.Date
│java.util.Dictionary
│ └java.util.Hashtable
│ └java.util.Properties
│java.util.EventObject
│java.util.ResourceBundle
┌普通类┤ ├java.util.ListResourceBundle
│ │ └java.util.PropertyResourceBundle
│ │java.util.Local
│ │java.util.Observable
│ │java.util.Random
│ │java.util.StringTokenizer
│ │java.util.Vector
│ │ └java.util.Stack
Java.util┤ └java.util.TimeZone
│ └java.util.SimpleTimeZone
│ ┌java.util.Enumeration
├接 口┤java.util.EventListener
│ └java.util.Observer
│ ┌java.util.EmptyStackException
└异常类┤java.util.MissingResourceException
│java.util.NoSuchElementException
└java.util.TooManyListenersException
图1.1 java.util包的基本层次结构

1.2 日期类Date

Java在日期类中封装了有关日期和时间的信息,用户可以通过调用相应的方法来获取系统时间或设置日期和时间。Date类中有很多方法在JDK1.0公布后已经过时了,在8.3中我们将介绍JDK1.0中新加的用于替代Date的功能的其它类。
在日期类中共定义了六种构造函数。
(1)public Date()
创建的日期类对象的日期时间被设置成创建时刻相对应的日期时间。
例 Date today=new Date();//today被设置成创建时刻相对应的日期时间。
(2)public Date (long date)
long 型的参数date可以通过调用Date类中的static方法parse(String s)来获得。
例 long l=Date.parse("Mon 6 Jan 1997 13:3:00");
Date day=new Date(l);
//day中时间为1997年 1月6号星期一,13:3:00。
(3)public Date(String s)
按字符串s产生一日期对象。s的格式与方法parse中字符串参数的模式相同。
例 Date day=new Date("Mon 6 Jan 1997 13:3:00");
//day 中时间为1997年1月6号星期一,13:3:00.
(4)public Date(int year,int month,int date)
(5)public Date(int year,int month,int date,int hrs,int min)
(6)public Date(int year,int month,int date,int hrs,int min,int sec)
按给定的参数创建一日期对象。
参数说明:
year的值为:需设定的年份-1900。例如需设定的年份是1997则year的值应为97,即1997-1900的结果。所以Date中可设定的年份最小为1900;
month的值域为0~11,0代表1月,11表代表12月;
date的值域在1~31之间;
hrs的值域在0~23之间。从午夜到次日凌晨1点间hrs=0,从中午到下午1点间hrs=12;
min和sec的值域在0~59之间。
例 Date day=new Date(11,3,4);
//day中的时间为:04-Apr-11 12:00:00 AM
另外,还可以给出不正确的参数。
例 设定时间为1910年2月30日,它将被解释成3月2日。
Date day=new Date(10,1,30,10,12,34);
System.out.println("Day's date is:"+day);
//打印结果为:Day's date is:Web Mar 02 10:13:34 GMT+08:00 1910
下面我们给出一些Date类中常用方法。
(1)public static long UTC(int year,int month,int date,int hrs. int min,int sec)
该方法将利用给定参数计算UTC值。UTC是一种计时体制,与GMT(格林威治时间)的计时体系略有差别。UTC计时体系是基于原子时钟的,而GTMT计时体系是基于天文学观测的。计算中使用的一般为GMT计时体系。
(2)public static long parse(String s)
该方法将字符串s转换成一个long型的日期。在介绍构造方法Date(long date)时曾使用过这个方法。
字符串s有一定的格式,一般为:
(星期 日 年 时间GMT+时区)
若不注明时区,则为本地时区。
(3)public void setMonth(int month)
(4)public int getMonth()
这两个方法分别为设定和获取月份值。
获取的月份的值域为0~11,0代表1月,11代表12月。
(5)public String toString()
(6)public String toLocalString()
(7)public String toGMTString()
将给定日期对象转换成不同格式的字符串。它们对应的具体的格式可参看例子8.1。
(8)public int getTimezoneOffset()
该方法用于获取日期对象的时区偏移量。
例8.1中对上面介绍的Date类中的基本方法进行了具体的应用,并打印了相应的结果。由于使用了一些过时的方法,所以编译时会有警告信息。另外,由于本例中的时间表示与平台有关,不同的JDK版本对此处理不完全相同,因此不同版本的JDK执行本例的结果可能有细微差异。
例1.1 DateApp.java
import java.lang.System;
import java.util.Date;
public class DateApp{
public static void main(String args[]){
Date today=new Date();
//today中的日期被设成创建时刻的日期和时间,假设创建时刻为1997年3月
//23日17时51分54秒。
System.out.println("Today's date is "+today);
//返回一般的时间表示法,本例中结果为
//Today's date is Fri May 23 17:51:54 1997
System.out.println("Today's date(Internet GMT)is:"
+today.toGMTString());
//返回结果为GMT时间表示法,本例中结果为
//Today's date(Internet GMT)is: 23 May 1997 09:51:54:GMT
System.out.println("Today's date(Locale) is:"
+today.toLocaleString());
//返回结果为本地习惯的时间表示法,结果为
//Today's date(Locale)is:05/23/97 17:51:54
System.out.println("Today's year is: "+today.getYear());
System.out.println("Today's month is: "+(today.getMonth()+1));
System.out.println("Today's date is: "+today.getDate());
//调用Date类中方法,获取年月日的值。
//下面调用了不同的构造方法来创建Date类的对象。
Date day1=new Date(100,1,23,10,12,34);
System.out.println("Day1's date is: "+day1);
Date day2=new Date("Sat 12 Aug 1996 13:3:00");
System.out.println("Day2's date is: "+day2);
long l= Date.parse("Sat 5 Aug 1996 13:3:00 GMT+0800");
Date day3= new Date(l);
System.out.println("Day3's date(GMT)is: "+day3.toGMTString());
System.out.println("Day3's date(Locale)is: "
+day3.toLocaleString());
System.out.println("Day3's time zone offset is:"
+day3.getTimezoneOffset());
}
}

运行结果(JDK1.3版,与原文不同,原文是JDK1.0版):
E:\java\tutorial\java01>java DateApp
Today's date is Thu Dec 27 17:58:16 CST 2001
Today's date(Internet GMT)is:27 Dec 2001 09:58:16 GMT
Today's date(Locale) is:2001-12-27 17:58:16
Today's year is: 101
Today's month is: 12
Today's date is: 27
Day1's date is: Wed Feb 23 10:12:34 CST 2000
Day2's date is: Fri Aug 12 13:03:00 CST 1996
Day3's date(GMT)is: 5 Aug 1996 05:03:00 GMT
Day3's date(Locale)is: 1996-8-5 13:03:00
Day3's time zone offset is:-480

E:\java\tutorial\java01>

1.3 日历类Calendar

在早期的JDK版本中,日期(Date)类附有两大功能:(1)允许用年、月、日、时、分、秒来解释日期:(2)允许对表示日期的字符串进行格式化和句法分析。在JDK1.1中提供了类Calendar来完成第一种功能,类DateFormat来完成第二项功能。dateFormat是java.text包中的一个类。与Date类有所不同的是,DateFormat类接受用各种语言和不同习惯表示的日期字符串。本节将介绍java.util包中的类Calendar及其它新增加的相关的类。
类Calendar是一个抽象类,它完成日期(Date)类和普通日期表示法(即用一组整型域如YEAR,MONTH,DAY,HOUR表示日期)之间的转换。
由于所使用的规则不同,不同的日历系统对同一个日期的解释有所不同。在JDK1.1中提供了Calendar类一个子类GregorianCalendar??它实现了世界上普遍使用的公历系统。当然用户也可以通过继承Calendar类,并增加所需规则,以实现不同的日历系统。
第GregorianCalendar继承了Calendar类。本节将在介绍类GregorianCalendar的同时顺带介绍Calendar类中的相关方法。
类GregorianCalendar提供了七种构造函数:
(1)public GregorianCalendar()
创建的对象中的相关值被设置成指定时区,缺省地点的当前时间,即程序运行时所处的时区、地点的当前时间。
(2)public GregorianCalendar(TimeZone zone)
创建的对象中的相关值被设置成指定时区zone,缺省地点的当前时间。
(3)public GregorianCalendar(Locale aLocale)
创建的对象中的相关值被设置成缺省时区,指定地点aLocale的当前时间。
(4)public GregorianCalendar(TimeZone zone,Local aLocale)
创建的对象中的相关值被设置成指定时区,指定地点的当前时间。
上面使用到的类TimeZone的性质如下:
TimeZone是java.util包中的一个类,其中封装了有关时区的信息。每一个时区对应一组ID。类TimeZone提供了一些方法完成时区与对应ID两者之间的转换。
(Ⅰ)已知某个特定的ID,可以调用方法
public static synchronized TimeZone getTimeZone(String ID)
来获取对应的时区对象。
例 太平洋时区的ID为PST,用下面的方法可获取对应于太平洋时区的时区对象:
TimeZone tz=TimeZone.getTimeZone("PST");
调用方法getDefault()可以获取主机所处时区的对象。
TimeZone tz=TimeZone.getDefault();
(Ⅱ)调用以下方法可以获取时区的ID
■public static synchronized String[] getavailableIDs(int rawOffset)
根据给定时区偏移值获取ID数组。同一时区的不同地区的ID可能不同,这是由于不同地区对是否实施夏时制意见不统一而造成的。
例String s

阅读全文

与javadatetimezone相关的资料

热点内容
编程苦恼怎么办 浏览:140
vuejsref动态改变 浏览:171
哪些软件可用于文件解压 浏览:701
农行u盾原始密码 浏览:371
xp如何弄出一个无线网络连接 浏览:569
word插入pdf只显示文件名称和图标 浏览:150
我想编程一个小软件怎么弄 浏览:168
如何优化文件读取数据java 浏览:262
java敏捷式开发 浏览:800
网页对齐代码快捷键是什么 浏览:304
tomcatlinux文件目录 浏览:520
三星手机能升级系统吗 浏览:683
linux创建文件夹在哪 浏览:623
javadatetimezone 浏览:434
cf那些文件没有用 浏览:502
苹果官方网站的手机质量怎么样 浏览:801
微信存储数据的文件叫什么 浏览:94
js脚本不起作用 浏览:317
iphone3g怎么升级 浏览:341
deadtrigger2安卓 浏览:419

友情链接