import org.apache.commons.lang.StringUtils;
import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.*;
/**
* 日期Util类
*
* @author calvin
*/
public class DateUtil {
private static String defaultDatePattern = "yyyy-MM-dd";
/**
* 获得默认的 date pattern
*/
public static String getDatePattern() {
return defaultDatePattern;
}
/**
* 返回预设Format的当前日期字符串
*/
public static String getToday() {
Date today = new Date();
return format(today);
}
/**
* 使用预设Format格式化Date成字符串
*/
public static String format(Date date) {
return date == null ? "" : format(date, getDatePattern());
}
/**
* 使用参数Format格式化Date成字符串
*/
public static String format(Date date, String pattern) {
return date == null ? "" : new SimpleDateFormat(pattern).format(date);
}
/**
* 使用预设格式将字符串转为Date
*/
public static Date parse(String strDate) throws ParseException {
return StringUtils.isBlank(strDate) ? null : parse(strDate,
getDatePattern());
}
/**
* 使用参数Format将字符串转为Date
*/
public static Date parse(String strDate, String pattern) throws ParseException {
return StringUtils.isBlank(strDate) ? null : new SimpleDateFormat(pattern).parse(strDate);
}
/**
* 在日期上增加数个整月
*/
public static Date addMonth(Date date, int n) {
Calendar cal = Calendar.getInstance();
cal.setTime(date);
cal.add(Calendar.MONTH, n);
return cal.getTime();
}
public static String getLastDayOfMonth(String year, String month) {
Calendar cal = Calendar.getInstance();
//年
cal.set(Calendar.YEAR, Integer.parseInt(year));
//月,因为Calendar里的月是从0开始,所以要-1
// cal.set(Calendar.MONTH, Integer.parseInt(month) - 1);
//日,设为一号
cal.set(Calendar.DATE, 1);
//月份加一,得到下个月的一号
cal.add(Calendar.MONTH,1);
//下一个月减一为本月最后一天
cal.add(Calendar.DATE, -1);
return String.valueOf(cal.get(Calendar.DAY_OF_MONTH));//获得月末是几号
}
public static Date getDate(String year,String month,String day)throws ParseException{
String result=year+"-"+(month.length()==1?("0"+month):month)+"-"+(day.length()==1?("0"+day):day);
return parse(result);
}
--------------------------------------------------------------------------------
String dateString ="2006-11-22";
try {
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
Date date = sdf.parse(dateString);
}catch (ParseException e){
System.out.println(e.getMessage());
}
分享到:
相关推荐
在Java编程中,"util"类通常指的是工具类,这些类包含了各种常用的功能,方便开发者在项目中快速实现特定功能,提高代码复用性。以下是对给定的压缩包文件中涉及的一些工具类的详细说明: 1. **BeanTool.java**: ...
java util帮助类,包括日期工具类、字符串处理工具类、上传工具类、http请求工具类、hibernate工具类、MD5工具类、分页工具类等。 CodeStringUtil.java CreateFileUtil.java DateUtil.java FileCopy.java ...
C# Util中的Json工具类通常提供了序列化和反序列化JSON对象的方法,如将C#对象转换为JSON字符串,或者将JSON字符串解析为C#对象,这在处理API请求或保存配置文件时非常有用。 2. **Net**: 这部分可能包含网络通信...
在Java中,Util类通常包含了各种通用功能,如集合操作、日期时间处理、字符串处理等。以下是一些Java中常用的Util类及其重要知识点的详细说明: 1. **ArrayList和LinkedList**: 这两个都是`java.util`包下的List...
在Java编程语言中,`util`包是Java标准库中的一个核心部分,包含了大量实用工具类,极大地丰富了开发者的代码库。这个包下有很多重要的类,如ArrayList、HashMap、LinkedList、Date、Calendar等,它们提供了许多常用...
在Java编程中,工具类(Util Class)是包含各种实用函数的静态类,它们提供了一种简化常见任务的方法。在给定的`UtilClass`中,我们有五个主要的工具类:`StringUtil`、`FileUtil`、`ConnectDB`、`DateUtil`和`...
"MJ.Util"、"MJ.Util.Extension"和"MJ.Util.Model"这三个文件名暗示了这个压缩包可能包含了C#中的实用工具类、扩展方法以及数据模型类。 1. **MJ.Util**: 这个命名很可能代表了一个包含各种通用功能的工具类库。...
在实际项目中,自定义的Util类还可以根据业务需求定制一些特定的功能,比如日期的计算(如工作日计算、节假日判断)、字符串的加密解密、文件操作等。这些Util类往往遵循单一职责原则,每个方法只做一件事情,使得...
`Date`和`Calendar`是处理日期和时间的类,但在Java 8之后,`java.time`包的`LocalDate`、`LocalTime`、`LocalDateTime`等类更推荐使用,它们提供了更加直观和灵活的时间操作。 `Random`类用于生成随机数,可以生成...
这样的设计使得Util类在内存管理上更为高效,不会产生无用的对象。Util类的主要特点是通用性强,可以被多个类或模块复用,降低了代码的耦合度。 二、常见Util工具类 1. **Java.lang.StringUtil**:Java内置的字符串...
Java的`util`工具类是Java标准库中的核心部分,为开发者提供了丰富的功能,极大地简化了编程工作。这个包包含了各种集合框架、日期时间处理、随机数生成、字符串操作、IO流处理等实用工具类。在Java编程中,熟练掌握...
Java API中的`java.util.GregorianCalendar`类是用于处理日期和时间的重要工具,它提供了丰富的功能来满足各种日历操作需求。这个类是基于格里高利历(公历)的,是Java中最常用的日期时间类之一。在给定的压缩包...
Util工具类通常是一些静态类,包含了一系列静态方法,用于执行常见的任务,如字符串处理、日期转换、数学计算、IO操作等。这样的设计模式使得开发者可以在不创建对象的情况下调用这些功能,减少了内存开销。一个...
主要用于java的代码工具,是一些工具类的集合,其中包括日期类型的转换,树形结构的过滤,html标签过滤等
总之,Struts中的Util类在处理日期时提供了许多便利的功能,包括日期和字符串之间的转换,日期的格式化,以及处理时区和截断日期等。对于开发基于Struts的Web应用程序来说,熟练掌握这些工具可以帮助我们更高效地...
在给定的标题“Java常用日期辅助类”中,我们可以推测这篇博文可能探讨了Java中的一些核心日期处理工具,如`java.util.Date`,`java.time`包中的类,以及自定义的日期助手类`DateHelper.java`。 `java.util.Date`是...
在Java编程语言中,处理日期和时间时经常使用到`java.util.Date`和`java.sql.Date`这两个类。它们虽然名字相似,但在实际应用中有很大的区别。 - **`java.util.Date`**:这个类提供了创建和操作日期/时间的功能,它...
3. **日期类**: - `Util.date.format`:格式化日期,如"yyyy-MM-dd"或"HH:mm:ss"。 - `Util.date.diff`:计算两个日期之间的差值,如天数、小时数等。 - `Util.date.add`:向日期添加指定的时间单位,如增加几天...
`java.util.Date`类是Java早期提供的一个核心类,用于表示日期和时间。然而,由于`Date`类存在一些设计上的不足,如不便于格式化和处理时区等问题,后来Java引入了`java.time`包,提供了一系列更加强大和易用的日期...