📄 dateex.java
字号:
package gov.gdlt.ssgly.taxcore.taxblh.gzda.service.xmlinterface.impl;
import java.sql.Timestamp;
import java.text.*;
import java.util.Date;
import java.util.Calendar;
import java.util.GregorianCalendar;
public class DateEx {
public static final long HOUR = 0x36ee80L;
public static final long DAY = 0x5265c00L;
public static final int MONTH=GregorianCalendar.MONTH;
public static final int DAY_OF_MONTH=GregorianCalendar.DAY_OF_MONTH;
public static final int YEAR=GregorianCalendar.YEAR;
public static final String dateFormat = "yyyy.MM.dd HH:mm:ss";
public DateEx() {
}
public static Date parseDate(String yyyymmddhhmmss, String format)
{
SimpleDateFormat formatter = new SimpleDateFormat(format);
try
{
ParsePosition pos = new ParsePosition(0);
Date date = formatter.parse(yyyymmddhhmmss, pos);
return date;
}
catch(Exception e)
{
throw new IllegalArgumentException(String.valueOf(String.valueOf((new StringBuffer("错误的日期:")).append(yyyymmddhhmmss).append(" ").append(e))));
}
}
public Timestamp parseTimestamp(String yyyymmddhhmmss)
{
return new Timestamp(parseDate(yyyymmddhhmmss).getTime());
}
public Date parseDate(String yyyymmddhhmmss)
{
if(yyyymmddhhmmss == null || yyyymmddhhmmss.length() == 0)
return null;
SimpleDateFormat formatter = new SimpleDateFormat("yyyy.MM.dd HH:mm:ss");
try
{
yyyymmddhhmmss = yyyymmddhhmmss.replace('-', '.');
if(yyyymmddhhmmss.indexOf(":") < 0)
yyyymmddhhmmss = String.valueOf(String.valueOf(yyyymmddhhmmss)).concat(" 00:00:00");
ParsePosition pos = new ParsePosition(0);
Date date = formatter.parse(yyyymmddhhmmss, pos);
return date;
}
catch(Exception e)
{
throw new IllegalArgumentException(String.valueOf(String.valueOf((new StringBuffer("错误的日期:")).append(yyyymmddhhmmss).append(" ").append(e))));
}
}
public static String dateToString(Date date)
{
if(date == null)
return null;
SimpleDateFormat formatter = new SimpleDateFormat("yyyy.MM.dd HH:mm:ss");
try
{
String s = formatter.format(date);
return s;
}
catch(Exception e)
{
e.printStackTrace();
throw new IllegalArgumentException("日期转换成字符串失败:".concat(String.valueOf(String.valueOf(e))));
}
}
public static String dateToString(Timestamp date, String format)
{
return dateToString(((Date) (date)), format);
}
public static String dateToString(Date date, String format)
{
if(date == null)
return null;
SimpleDateFormat formatter = new SimpleDateFormat(format);
try
{
String s = formatter.format(date);
return s;
}
catch(Exception e)
{
e.printStackTrace();
throw new IllegalArgumentException("日期转换成字符串失败:".concat(String.valueOf(String.valueOf(e))));
}
}
public static String getORACLEdatestring(Date d)
{
return String.valueOf(String.valueOf((new StringBuffer("to_date('")).append(dateToString(d)).append("','yyyy.mm.dd hh24:mi:ss')")));
}
public static Timestamp nowTime()
{
return new Timestamp(System.currentTimeMillis());
}
public static java.sql.Date getFirstDateOfMonth(Date date){
String sdate=DateEx.dateToString(date,"yyyyMMdd");
return java.sql.Date.valueOf(sdate.substring(0,4)
+"-"+sdate.substring(4,6)+"-01");
}
public static int dateDiffWith(Date date1,Date date2,String mode){
//date2应大于date1
return (int) ((date2.getTime() - date1.getTime())/(24*60*60*1000));
}
public static java.sql.Date dateAfter(Date date,int days,int mode){
GregorianCalendar grc=new GregorianCalendar();
grc.setTime(date);
grc.add(mode,days);
Date date2=grc.getTime();
return java.sql.Date.valueOf(dateToString(date2,"yyyy-MM-dd"));
}
public static int getDaysOfMonth(Date date){
Date d1=getFirstDateOfMonth(date);
Date d2=getFirstDateOfMonth(dateAfter(date,1,MONTH));
return dateDiffWith(d1,d2,"dd");
}
public static int getYear(Date date){
String sdateD=DateEx.dateToString(date,"yyyyMMdd");
return Integer.parseInt(sdateD.substring(0,4));
}
public static int getMonth(Date date){
String sdateD=DateEx.dateToString(date,"yyyyMMdd");
return Integer.parseInt(sdateD.substring(4,6));
}
public static int getDay(Date date){
String sdateD=DateEx.dateToString(date,"yyyyMMdd");
return Integer.parseInt(sdateD.substring(6,8));
}
public static java.sql.Date today()
{
long dateTemp = (new java.util.Date()).getTime();
return new java.sql.Date(dateTemp);
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -