当前位置: 代码迷 >> J2EE >> Java日期格式化及其使用例子
  详细解决方案

Java日期格式化及其使用例子

热度:541   发布时间:2013-11-10 00:41:58.0
Java日期格式化及其使用例子  
1 SimpleDateFormat担当重任,怎样格式化都行  
  
import java.util.Date;  
import java.text.SimpleDateFormat;  
public class Demo  
{  
public static void main(String[] args)  
{  
  Date now=new Date();  
  SimpleDateFormat f=newSimpleDateFormat("今天是"+"yyyy年MM月dd日 E kk点mm分");  
  System.out.println(f.format(now));  
    
  f=new SimpleDateFormat("a hh点mm分ss秒");  
  System.out.println(f.format(now));  
  }  
}  
  
  
2 从字符串到日期类型的转换:  
  
import java.util.Date;  
import java.text.SimpleDateFormat;  
import java.util.GregorianCalendar;  
import java.text.*;  
publicclass Demo  
{  
public static void main(String[] args)  
{  
  String strDate="2005年04月22日";  
  //注意:SimpleDateFormat构造函数的样式与strDate的样式必须相符  
  SimpleDateFormat simpleDateFormat=new SimpleDateFormat("yyyy年MM月dd日");  
  //必须捕获异常  
  
  try 
  {  
  Date date=simpleDateFormat.parse(strDate);  
  System.out.println(date);  
  }  
  catch(ParseException px)  
  {  
  px.printStackTrace();  
  }  
}  
}  
  
  
3 将毫秒数换转成日期类型  
  
import java.util.Date;  
import java.text.SimpleDateFormat;  
import java.util.GregorianCalendar;  
import java.text.*;  
public class Demo  
{  
public static void main(String[] args)  
{  
  long now=System.currentTimeMillis();  
  System.out.println("毫秒数:"+now);  
  Date dNow=new Date(now);  
  System.out.println("日期类型:"+dNow);  
}  
}  
  
  
这3例源自http://www.daimami.com  
4 获取系统时期和时间,转换成SQL格式后更新到数据库  
(http://www.daimami.com)  
  
java.util.Date d=new java.util.Date();    //获取当前系统的时间  
  
//格式化日期  
  
new java.text.SimpleDateFormat s= new java.text.SimpleDateFormat("yyyy-MM-dd HH:mm:ss");  
  
String dateStr = s.format(d); //转为字符串  
  
使用RS更新数据库,仍然要用rs.updateString,而不是rs.updateDade。  
rs.updateString("regtime",dateStr);  //regtime字段为datetime类型的  
下面两例源自 http://www.daimami.com  
5 按本地时区输出当前日期  
  
Date myDate = new Date();  
System.out.println(myDate.toLocaleString());  
输出结果为:  
2003-5-30 
  
  
6 如何格式化小数  
  
DecimalFormat df = new DecimalFormat(",###.00");   
double aNumber = 33665448856.6568975;  
String result = df.format(aNumber);   
Sytem. out.println(result);  
  
  
输出结果为:  
33,665,448,856.66 
  
其他:获取毫秒时间 System.currentTimeMillis();  
  
7 在数据库里的日期只以年-月-日的方式输出  
(http://www.daimami.com)  
定义日期格式:SimpleDateFormat sdf = new SimpleDateFormat(yy-MM-dd);  
sql语句为:String sqlStr = "select bookDate from roomBook where bookDate between '2007-4-10' and '2007-4-25'";  
输出:  
System.out.println(df.format(rs.getDate("bookDate")));

  相关解决方案