Date类型的时间显⽰格式
本⽂转⾄
创建⼀个⽇期对象
使⽤系统的当前⽇期和时间创建⼀个⽇期对象并返回⼀个长整数的简单例⼦。这个时间通常被称为Java 虚拟机(JVM)主机环境的系统时间。import java.util.Date;
public class DateExample1
{
public static void main(String[] args)
{
// Get the system date/time
Date date = new Date();
System.out.Time());
}
}
今天是星期⼀,2005年8⽉8⽇,上午8:43,上⾯的例⼦在系统输出设备上显⽰的结果是1123461832312。
⽇期数据的定制格式
使⽤类SimpleDateFormat和它的抽象基类 DateFormat 完成⽇期数据的格式定制,⽐⽅今天星期⼀-⼋⽉-08-2005。下⾯的例⼦展⽰了如何完成这个⼯作:
SimpleDateFormat;
import java.util.Date;
public class DateExample2
{
public static void main(String[] args)
{
SimpleDateFormat bartDateFormat = new SimpleDateFormat
("EEEE-MMMM-dd-yyyy");
Date date = new Date();
System.out.println(bartDateFormat.format(date));
}
}
只要通过向SimpleDateFormat 的构造函数传递格式字符串"EEE-MMMM-dd-yyyy",就能够指明⾃⼰想要的格式。运⾏结果就是:星期⼀-⼋⽉-08-2005 了。传递"EE-MM-dd-yy"会显⽰星期⼀-08-08-05 。
将⽂本数据解析成⽇期对象
假设⼀个⽂本字符串包含了⼀个格式化了的⽇期对象,⽽需要解析这个字符串并从⽂本⽇期数据创建⼀个⽇期对象。下⾯的例⼦,将解析⽂本字符串"8-8-2005"并创建⼀个值为1123430400000 的⽇期对象。
例⼦程序:
SimpleDateFormat;
import java.util.Date;
public class DateExample3
{
public static void main(String[] args)
{
// Create a date formatter that can parse dates of the form MM-dd-yyyy.
SimpleDateFormat bartDateFormat = new SimpleDateFormat("MM-dd-yyyy");
// Create a string containing a text date to be parsed.
String dateStringToParse = "8-8-2005";
try {
// Parse the text version of the date.
//We have to perform the parse method in a
//try-catch construct in case dateStringToParse
//does not contain a date in the format we are expecting.
Date date = bartDateFormat.parse(dateStringToParse);
// Now send the parsed date as a long value
// to the system output.
System.out.Time());
}
catch (Exception ex){
System.out.Message());
}
}
}
使⽤标准的⽇期格式化过程
可以⽣成和解析定制的⽇期格式后,现在来看⼀看如何使⽤内建的格式化过程。使⽤⽅法DateTimeInstance()可以得到⽤⼏种不同的⽅法获得标准的⽇期格式化过程。在下⾯的例⼦中,我们获取了四个内建的⽇期格式化过程。它们包括⼀个短的,中等的,长的,和完整的⽇期格式。
DateFormat;
import java.util.Date;
public class DateExample4
{
public static void main(String[] args)
{
Date date = new Date();
DateFormat shortDateFormat = DateTimeInstance
(DateFormat.SHORT,DateFormat.SHORT);
DateFormat mediumDateFormat = DateTimeInstance
(DateFormat.MEDIUM,DateFormat.MEDIUM);
DateFormat longDateFormat = DateTimeInstance
(DateFormat.LONG,DateFormat.LONG);
DateFormat fullDateFormat = DateTimeInstance
DateFormat.FULL,DateFormat.FULL);
System.out.println(shortDateFormat.format(date));
System.out.println(mediumDateFormat.format(date));
System.out.println(longDateFormat.format(date));
System.out.println(fullDateFormat.format(date));
}
}
注意我们在对 getDateTimeInstance的每次调⽤中都传递了两个值。第⼀个参数是⽇期风格,⽽第⼆个参数是时间风格。它们都是基本数据类型int(整型)。考虑到可读性,这⾥使⽤了DateFormat 类提供的常量: SHORT, MEDIUM, LONG,和 FULL。
运⾏例⼦程序,它将向标准输出设备输出下⾯的内容:
05-8-8 上午9:17
2005-8-8 9:17:42
2005年8⽉8⽇上午09时17分42秒
2005年8⽉8⽇ 09时17分42秒 GMT+08:00
(完成程序测试结果基于JDK1.2.2)
|  |
SimpleDateFormat;
import java.util.Date;
import java.lang.String;
import java.lang.Integer;
public class DateExample{
public static void main(String[] args){
int SHANGBAN = 1; //上班
int XIUXI = 0;  //休息
int[] AugDay = { //⼋⽉份数据
SHANGBAN,SHANGBAN,SHANGBAN,SHANGBAN,SHANGBAN,XIUXI,XIUXI,
SHANGBAN,SHANGBAN,SHANGBAN,SHANGBAN,SHANGBAN,XIUXI,XIUXI,
SHANGBAN,SHANGBAN,SHANGBAN,SHANGBAN,SHANGBAN,XIUXI,XIUXI,
SHANGBAN,SHANGBAN,SHANGBAN,SHANGBAN,SHANGBAN,XIUXI,XIUXI,
SHANGBAN,SHANGBAN,SHANGBAN
};
// Create a date formatter that can parse dates of the form yyyy-MM-dd.
SimpleDateFormat bartDateFormat1 = new SimpleDateFormat("yyyy-MM-dd");
// Create a string containing a text date to be parsed.
String dateStringToParse = "2005-8-10";  //可以改成接受输⼊
try {
Date date = bartDateFormat1.parse(dateStringToParse);
SimpleDateFormat bartDateFormat2 = new SimpleDateFormat("EEEE");
System.out.println(dateStringToParse + " " +bartDateFormat2.format(date));
int year = Integer.parseInt(dateStringToParse.substring(0,4));
int month = Integer.parseInt(dateStringToParse.substring(5,6));
int day = Integer.parseInt(dateStringToParse.substring(7,9));
if(month == 8){
//假如输⼊的是8⽉份的话(这⾥只是演⽰,指的是今年8⽉,你可以按你的需要修改)
if(AugDay[day-1] == SHANGBAN){
System.out.println("今天上班");
}
else{
System.out.println("今天休息");
}
}
}
catch (Exception ex){
System.out.Message());
}
}java时间日期格式转换
}
输⼊时间是2005-8-10,只⽤了⼋⽉的数组⾥的值来显⽰⼤体的意思,你完全可以修改满⾜你的需要。最后显⽰结果为:
2005-8-10 星期三
今天上班
好了,应该很清楚了吧,加油,也感谢你的⽀持!
I LOVE JAVA!

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。