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,字符串,日期
0
投稿

猜你喜欢

  • Android中SparseArray性能优化的使用方法

    2023-08-24 22:26:20
  • C语言 奇偶排序算法详解及实例代码

    2023-04-17 04:47:39
  • C#后台创建控件并获取值的方法

    2022-10-20 08:39:46
  • Qt QTableWidget基本操作及使用

    2022-05-22 23:15:55
  • 浅析JAVA中的内存结构、重载、this与继承

    2023-09-24 19:15:07
  • C# menuStrip控件实现鼠标滑过自动弹出功能

    2022-09-01 05:18:37
  • dubbo如何实现consumer从多个group中调用指定group的provider

    2022-06-09 01:00:13
  • C#将Excel中的数据转换成DataSet

    2021-10-29 18:20:55
  • Android如何通过scheme跳转界面

    2021-08-11 05:19:41
  • C#实现的字符串转MD5码函数实例

    2023-03-02 15:34:43
  • Toolbar制作菜单条过程详解

    2022-11-29 04:13:59
  • Kotlin协程flowOn与线程切换超详细示例介绍

    2022-11-06 08:31:51
  • Java concurrency集合之LinkedBlockingDeque_动力节点Java学院整理

    2022-12-06 12:28:38
  • java可以作为第一门编程语言学习吗

    2021-05-25 07:52:37
  • Java中synchronized的优化措施

    2022-10-09 18:19:05
  • TransmittableThreadLocal解决线程间上下文传递烦恼

    2023-11-09 17:09:35
  • Android中使用自定义ViewGroup的总结

    2021-12-18 04:25:39
  • C#实现简易多人聊天室

    2023-02-06 06:09:47
  • c#获取两个特定字符之间的内容并输出的方法

    2021-12-02 19:47:11
  • C# partial关键字说明

    2021-12-29 15:29:54
  • asp之家 软件编程 m.aspxhome.com