java字符串与日期类型转换的工具类
作者:执笔记忆的空白 时间:2021-12-30 02:44:30
常用的字符串转date,和日期转字符串的方法,具体内容如下
package com.cq2022.zago.base.util;
import java.text.DateFormat;
import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.Date;
import java.util.GregorianCalendar;
import javax.xml.datatype.DatatypeFactory;
import javax.xml.datatype.XMLGregorianCalendar;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
/***
* 日期工具类
*
* @author shijing
*
*/
public class DateUtils {
private static final Logger logger = LoggerFactory.getLogger(DateUtils.class);
/***
* Date类型转换成XMLGregorianCalendar类型
*
* @param date
* @return
*/
public static XMLGregorianCalendar convertToXMLGregorianCalendar(Date date) {
GregorianCalendar cal = new GregorianCalendar();
cal.setTime(date);
XMLGregorianCalendar gc = null;
try {
gc = DatatypeFactory.newInstance().newXMLGregorianCalendar(cal);
}
catch (Exception e) {
logger.error("Date类型转换成XMLGregorianCalendar类型出错:"+e);
}
return gc;
}
/***
* XMLGregorianCalendar类型转换成Date类型
*
* @param cal
* @return
* @throws Exception
*/
public static Date convertToDate(XMLGregorianCalendar cal) throws Exception {
GregorianCalendar ca = cal.toGregorianCalendar();
return ca.getTime();
}
/**
* String 转 Date
* 2015年3月25日上午11:27:14
* auther:shijing
* @param str 日期字符串
* @param format 转换格式
* @return
* Date
*/
public static Date stringToDate(String str, String format) {
DateFormat dateFormat = new SimpleDateFormat(format);
Date date = null;
try {
date = dateFormat.parse(str);
}
catch (ParseException e) {
logger.error("String类型 转 Date类型出错:"+e);
}
return date;
}
/**
* Date 转 String
* auther: shijing
* 2015年3月25日上午11:28:14
* @param date 日期
* @param format 转换格式
* @return
*/
public static String dateToString(Date date,String format){
DateFormat dateFormat = new SimpleDateFormat(format);
String strDate=null;
try {
if(date!=null){
strDate=dateFormat.format(date);
}
} catch (Exception e) {
// TODO Auto-generated catch block
logger.error("Date类型 转 String类型出错:"+e);
}
return strDate;
}
/***
* 测试方法
*
* @param args
*/
public static void main(String[] args) {
XMLGregorianCalendar d = DateUtils
.convertToXMLGregorianCalendar(new Date());
// System.out.println(d.getDay());
XMLGregorianCalendar cal = null;
try {
cal = DatatypeFactory.newInstance().newXMLGregorianCalendar();
cal.setMonth(06);
cal.setYear(2010);
Date date = DateUtils.convertToDate(cal);
String format = "yyyy-MM-dd HH:mm:ss";
SimpleDateFormat formatter = new SimpleDateFormat(format);
// System.out.println(formatter.format(date));
Date d1 = DateUtils.stringToDate("2014/7/24 9:51:00", "yyyy/MM/dd hh:mm:ss");
XMLGregorianCalendar d2 = DateUtils.convertToXMLGregorianCalendar(d1);
// System.out.println(d2.toString());
String dateStr=DateUtils.dateToString(cal.toGregorianCalendar().getTime(), "yyyy-MM-dd HH:mm:ss");
// System.out.println("dateStr="+ dateStr);
}
catch (Exception e) {
e.printStackTrace();
}
}
}
来源:http://blog.csdn.net/moneyshi/article/details/44852157
标签:java,字符串,日期
![](/images/zang.png)
![](/images/jiucuo.png)
猜你喜欢
java实现单机版五子棋
2022-12-20 20:15:07
![](https://img.aspxhome.com/file/2023/9/63379_0s.jpg)
eclipse如何搭建Springboot项目详解
2023-11-29 04:52:36
![](https://img.aspxhome.com/file/2023/7/60597_0s.png)
seata springcloud整合教程与遇到的坑
2023-09-19 03:11:06
maven中profile的使用
2022-03-31 10:43:53
Triple协议支持Java异常回传设计实现详解
2021-08-16 17:16:09
![](https://img.aspxhome.com/file/2023/8/82018_0s.png)
Java设计通用的返回数据格式过程讲解
2023-11-09 00:16:40
Java输入年份和月份判断多少天实例代码
2023-12-23 10:43:11
MyBatis ofType和javaType的区别说明
2021-09-10 22:56:43
C#利用Label标签控件模拟窗体标题的移动及窗体颜色不断变换效果
2021-06-22 16:55:51
![](https://img.aspxhome.com/file/2023/8/79038_0s.jpg)
Java 改造ayui表格组件实现多重排序
2022-05-15 07:34:15
![](https://img.aspxhome.com/file/2023/1/64891_0s.jpg)
mybaties plus selectMaps和selectList的区别说明
2021-07-15 11:18:29
![](https://img.aspxhome.com/file/2023/5/68225_0s.png)
Spring JPA联表查询之注解属性详解
2021-11-04 14:19:04
![](https://img.aspxhome.com/file/2023/9/67599_0s.jpg)
Java从服务端下载Excel模板文件的两种方法
2021-08-29 05:44:40
![](https://img.aspxhome.com/file/2023/5/67115_0s.jpg)
Java操作excel的三种常见方法实例
2022-12-11 02:29:55
![](https://img.aspxhome.com/file/2023/2/77362_0s.png)
Spring Cloud Hystrix异常处理方法详解
2022-05-29 06:20:12
maven依赖版本没有按照最短路径原则生效的解决方案
2023-04-04 20:49:09
java使用influxDB数据库的详细代码
2023-03-04 05:22:27
java实现将结果集封装到List中的方法
2021-10-27 22:29:45
Java中的几种读取properties配置文件的方式
2022-09-06 13:36:19
C# 通过ServiceStack 操作Redis
2023-12-13 06:18:01
![](https://img.aspxhome.com/file/2023/2/80022_0s.png)