XMLGregorianCalendar如何转换为Date和String

lbqlbq 2009-10-20 05:04:29
在xfire自动生成类后,日期型都是XMLGregorianCalendar,如果将XMLGregorianCalendar转换为Date和String
...全文
817 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
swandragon 2009-10-23
  • 打赏
  • 举报
回复
SimpleDateFormat
自己定义转换的格式
xiaozejun 2009-10-23
  • 打赏
  • 举报
回复
先转String在转date
config_man 2009-10-20
  • 打赏
  • 举报
回复
不错。
iqlife 2009-10-20
  • 打赏
  • 举报
回复
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://blog.csdn.net/zhoujian2003/archive/2005/04/22/358363.aspx

4 获取系统时期和时间,转换成SQL格式后更新到数据库
(http://blog.csdn.net/netrope/archive/2005/11/19/532729.aspx)

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://blog.csdn.net/kingter520/archive/2004/10/27/155435.aspx

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://blog.csdn.net/zzsxvzzsxv/archive/2007/08/27/1761004.aspx)
定义日期格式: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")));
fansy007 2009-10-20
  • 打赏
  • 举报
回复
给你个小例子

public static void testCalendar3() throws Exception{
javax.xml.datatype.XMLGregorianCalendar cal = javax.xml.datatype.DatatypeFactory
.newInstance().newXMLGregorianCalendar();
cal.setMonth(12);
cal.setYear(2005);

GregorianCalendar ca = cal.toGregorianCalendar();
String format = "MM/dd/yyyy HH:mm:ss";
SimpleDateFormat formatter = new SimpleDateFormat(format);
System.out.println(formatter.format(ca.getTime()));

}

81,092

社区成员

发帖
与我相关
我的任务
社区描述
Java Web 开发
社区管理员
  • Web 开发社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧