java日期操作的工具类时间格式的转换
package cn.itcast.oa.util;
import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.Calendar;
import java.util.Date;
import javax.xml.datatype.DatatypeConfigurationException;
import javax.xml.datatype.DatatypeFactory;
import javax.xml.datatype.XMLGregorianCalendar;
public class DateUtils {
/**
* 将指定字符串转换成日期
*
* @param date
* String 日期字符串
* @param datePattern
* String 日期格式
* @return Date
*/
public static java.util.Date getFormatDate(String date, String datePattern) {
SimpleDateFormat sd = new SimpleDateFormat(datePattern);
return sd.parse(date, new java.text.ParsePosition(0));
}
/**
* 将指定日期对象转换成格式化字符串
*
* @param date
* Date XML日期对象
* @param datePattern
* String 日期格式
* @return String
*/
public static String getFormattedString(Date date, String datePattern) {
SimpleDateFormat sd = new SimpleDateFormat(datePattern);
return sd.format(date);
}
/**
* 将指定XML日期对象转换成格式化字符串
*
* @param xmlDate
* Date XML日期对象
* @param datePattern
* String 日期格式
* @return String
*/
public static String getFormattedString(XMLGregorianCalendar xmlDate,
String datePattern) {
SimpleDateFormat sd = new SimpleDateFormat(datePattern);
Calendar calendar = xmlDate.toGregorianCalendar();
return sd.format(calendar.getTime());
}
/**
* 将指定XML日期对象转换成日期对象
*
* @param xmlDate
* Date XML日期对象
* @param datePattern
* String 日期格式
* @return Date
*/
public static Date xmlGregorianCalendar2Date(XMLGregorianCalendar xmlDate) {
return xmlDate.toGregorianCalendar().getTime();
}
public static String getThisYear() {
// 获得当前日期
Calendar cldCurrent = Calendar.getInstance();
// 获得年月日
String strYear = String.valueOf(cldCurrent.get(Calendar.YEAR));
return strYear;
}
public static XMLGregorianCalendar convert2XMLCalendar(Calendar calendar) {
try {
DatatypeFactory dtf = DatatypeFactory.newInstance();
return dtf.newXMLGregorianCalendar(
calendar.get(Calendar.YEAR),
calendar.get(Calendar.MONTH)+1,
calendar.get(Calendar.DAY_OF_MONTH),
calendar.get(Calendar.HOUR),
calendar.get(Calendar.MINUTE),
calendar.get(Calendar.SECOND),
calendar.get(Calendar.MILLISECOND),
calendar.get(Calendar.ZONE_OFFSET)/(1000*60));
} catch (DatatypeConfigurationException e) {
e.printStackTrace();
return null;
}
}
// 获取当天时间
public static java.sql.Timestamp getNowTime(String dateformat) {
Date now = new Date();
SimpleDateFormat dateFormat = new SimpleDateFormat(dateformat);// 可以方便地修改日期格式
String dateString = dateFormat.format(now);
SimpleDateFormat sd = new SimpleDateFormat(dateformat);
Date dateFormt = sd.parse(dateString, new java.text.ParsePosition(0));
java.sql.Timestamp dateTime = new java.sql.Timestamp(dateFormt
.getTime());
return dateTime;
// return hehe;
}
// 获取指定时间
public static java.sql.Timestamp getNowNewTime(String date,String dateformat){
//Date now = new Date();
SimpleDateFormat dateFormat = new SimpleDateFormat(dateformat);//可以方便地修改日期格式
dateFormat.parse(date, new java.text.ParsePosition(0));
// String dateString= dateFormat.format(date);
Date dateFormt= dateFormat.parse(date, new java.text.ParsePosition(0));
java.sql.Timestamp dateTime = new java.sql.Timestamp(dateFormt.getTime());
return dateTime;
// return hehe;
}
/**
* @param 含有yyyy-MM-dd'T'hh:mm:ss.SSS格式的时间转换.
* @return
*/
public static String getTFormatString(String tdate) {
SimpleDateFormat format1 = new SimpleDateFormat("yyyy-MM-dd'T'HH:mm:ss.SSS");
String str ="";
try {
java.util.Date date = format1.parse(tdate);
SimpleDateFormat format2 = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
str = format2.format(date);
} catch (ParseException e) {
e.printStackTrace();
}
return str;
}
public static void main(String[] args) {
SimpleDateFormat sd = new SimpleDateFormat("yyyyMMdd");
String date = "20110202";
System.out.println(sd.parse(date, new java.text.ParsePosition(0)));
System.out.println(getBefore2HourDate());
}
//获取当前时间前2个小时的时间。
public static String getBefore2HourDate(){
SimpleDateFormat df=new SimpleDateFormat("yyyy-MM-dd'T'HH:mm:ss");
Calendar c = Calendar.getInstance();
c.add(Calendar.HOUR_OF_DAY, -2); // 目前時間加3小時
return df.format(c.getTime());
}
/**
*
* @param time1 当前时间
* @param time2 比较时间
* @return 如果time1比time2大gap分钟,则返回true;
*/
public static boolean compareDateTime(Date time1, Date time2, int gap) {
return time1.getTime() - time2.getTime() > gap * 60 * 1000;
}
}
java日期操作的工具类时间格式的转换的更多相关文章
- java日期操作常用工具
java日期操作常用工具 package com..util; import java.sql.Timestamp; import java.text.SimpleDateFormat; import ...
- java日期操作大全
摘自(http://www.blogjava.net/i369/articles/83483.html) java日期操作 大全 先来一个: 取得指定月份的第一天与取得指定月份的最后一天 http ...
- java日期操作 大全
先来一个: 取得指定月份的第一天与取得指定月份的最后一天 http://iamin.blogdriver.com/iamin/847990.html )); } ...
- Java日期时间实用工具类
Java日期时间实用工具类 1.Date (java.util.Date) Date(); 以当前时间构造一个Date对象 Date(long); 构造函数 ...
- java自带BASE64工具进行图片和字符串转换
java自带BASE64工具进行图片和字符串转换 import java.io.File; import java.io.FileInputStream; import java.io.FileOut ...
- java自带BASE64工具进行图片和字符串转换【转】
java自带BASE64工具进行图片和字符串转换 import java.io.File; import java.io.FileInputStream; import java.io.FileOut ...
- Java POI操作Excle工具类
用到了jxl.jar和poi.jar 一些基本的操作Excel的操作方法: import java.io.File; import java.io.FileInputStream; import ja ...
- JAVA 日期操作
1.用java.util.Calender来实现 Calendar calendar=Calendar.getInstance(); calendar.setTime(new Date()); Sys ...
- java日期操作
//字符串转日期 public static void dt7() throws ParseException { String str_date="2015---08---08" ...
随机推荐
- 3.11-3.14 Hive 企业使用优化2
一.查看HQL执行计划explain 1.explain hive在执行的时候会把所对应的SQL语句都会转换成mapreduce代码执行,但是具体的MR执行信息我们怎样才能看出来呢? 这里就用到了ex ...
- ASP.NET Core会议管理平台实战_2、基本概念的理解
id Token携带用户的信息 AccessToken:是否有权限访问资源 看数据库的表,Client相关的表,api的相关的表 Resources把用户的简介抽象出来到IdentityClaims表 ...
- python之文件的读写(2)
小R昨天因为在研究weblogic的漏洞就没来得及学习python(好吧,这都是借口,懒了,大家可不能像我这样.要坚持每天都学). 这个进度是有点慢呀.哎呀,没事没事,我还年轻,才20岁. 哈哈 ...
- [CVE-2017-8464]Microsoft Windows远程命令执行漏洞复现
版权声明:本文为博主的原创文章,未经博主同意不得转载 前言 记录下自己的复现,保留意见 2017年6月13日,微软官方发布编号为CVE-2017-8464的漏洞公告,官方介绍Windows系统在解析快 ...
- Java - HashMap分别按Key和Value进行排序
我们都知道,Java中的Map结构是key->value键值对存储的,而且根据Map的特性,同一个Map中 不存在两个Key相同的元素,而value不存在这个限制.换句话说,在同一个Map中Ke ...
- Unity亚洲开发者大会会议简录之技术篇,Profiler的一些参数的意思
2014Unity亚洲开发者大会会议简录之技术篇 拖公司的福,有幸去了一趟北京参加了一场Unity3D的交流盛宴,在为期两天的时间内,不仅有着技术上收获,也有心灵上的震撼.现在先来说说技术方面的一些比 ...
- c#实现优先级队列
http://www.baidu.com/s?wd=c%23%E4%BC%98%E5%85%88%E7%BA%A7%E9%98%9F%E5%88%97&ie=utf-8&f=8& ...
- andriod ndk配置
r7及以后版本不需要再配置cywin ,留影 先在path中配置ndk的环境变量,位置为ndk的根目录,也可在图5中的位置配置环境变量
- CF446B DZY Loves Modification 【思维/优先队列】By cellur925
题目传送门 题目大意:给一个 \(n*m\) 的矩阵,并进行 \(k\) 次操作,每次操作将矩阵的一行或一列的所有元素的值减 \(p\) ,得到的分数为这次修改之前这一列/一行的元素和,求分数最大值. ...
- G - You Are the One(需要重想一遍)
#include <iostream> #include <algorithm> #include <cstring> #include <cstdio> ...