1:) 字符串转换成时间
1 2 3 4 5 6 7 8 9 10 11 12 13 |
SimpleDateFormat formatter = new SimpleDateFormat ('yyyy.MM.dd'); //假定像2002.07.04的是合法日期其他都非法。 String str='2002.07.04'; ParsePosition pos = new ParsePosition(0); Date dt=formatter.parse(str,pos); if(dt!=null) { //是合法日期 } else { //非法日期 } |
2:)两个日期相减
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 |
import java.util.*; import java.text.*; class a { public static void main(String[] args) { String s1 = '2003/08/15 17:15:30'; String s2 = '2002/09/14 14:18:37'; try{ SimpleDateFormat formatter = new SimpleDateFormat ('yyyy/MM/dd HH:mm:ss'); ParsePosition pos = new ParsePosition(0); ParsePosition pos1 = new ParsePosition(0); Date dt1=formatter.parse(s1,pos); Date dt2=formatter.parse(s2,pos1); System.out.println('dt1='+dt1); System.out.println('dt2='+dt2); long l = dt1.getTime() - dt2.getTime(); System.out.println('Hello World!='+l); }catch(Exception e){ System.out.println('exception'+e.toString()); } } } |
3:)得到2个月后的日期:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 |
import java.util.*; import java.text.DateFormat; public class test2 { public static void main(String args[]) throws Exception { String date='2001/11/30'; DateFormat dateFormat = DateFormat.getDateInstance(DateFormat.MEDIUM); GregorianCalendar grc=new GregorianCalendar(); grc.setTime(new Date(date)); grc.add(GregorianCalendar.MONTH,2); System.out.println('grc='+dateFormat.format(grc.getTime())); } } |
计算日期间隔
public int getDays(Date sd,Date ed){
return (ed.getTime()-sd.getTime())/(3600*24*1000)
}
日期加减
SimpleDateFormat sdf=new SimpleDateFormat(‘yyyyMMdd’);
String str=’20011230′;
Date dt=sdf.parse(str,new ParsePosition(0));
Calendar rightNow = Calendar.getInstance();
rightNow.setTime(dt);
rightNow.add(Calendar.DATE,2);//你要加减的日期
Date dt1=rightNow.getTime();
String reStr=sdf.format(dt1,”,new FieldPosition(0));
System.out.println(reStr);
时间显示控制
第一种方式:
<html>
<head><title>取得系统时间</title></head>
<body>
<%java.util.Date date=new java.util.Date();%>
现在是:<%=date%>
</body>
</html>
运行结果:
现在是:Tue Jul 31 10:32:52 CST 2001
第二种方式:
<%@ page import=’java.util.*, java.text.*’ %>
<HTML>
<HEAD><TITLE>显示当前时间</TITLE></HEAD>
<BODY>
当前时间:
<%
Date now = new Date();
out.println(DateFormat.getTimeInstance().format(now));
%>
</BODY>
</HTML>
运行结果:
10:31:42 AM
第三种方式:
<%
java.text.SimpleDateFormat formatter = new java.text.SimpleDateFormat(‘yyyy年MM月dd日’);
java.util.Date currentTime_1 = new java.util.Date();
out.print(formatter.format(currentTime_1));
%>
运行结果:
2001年07月31日
第四种方式:
<%
java.text.SimpleDateFormat formatter = new java.text.SimpleDateFormat(‘yyyy/MM/dd HH/mm/ss’);
java.util.Date currentTime_1 = new java.util.Date();
out.print(formatter.format(currentTime_1));
%>
运行结果:
2001/07/31 10/32/52
第三四两种方式其实是一样的他可以产生千变万化的格式。