import java.text.SimpleDateFormat;
import java.util.ArrayList;
import java.util.Date;
import java.util.List;
public class DateUtil {
/**
* 字符串转日期类型
*
* @author HeCheng
* @time 2010-12-08 18:31:46
* @return
*/
public static Date convertStringToDate(String time, int type) {
String format = "";
if (type == 1) {
format = "yyyy-MM-dd";
}
SimpleDateFormat sdf = new SimpleDateFormat(format);
try {
return sdf.parse(time);
} catch (Exception e) {
return null;
}
}
/**
* 取近一年
*
* @author HeCheng
* @time 2010-12-08 21:27:41
* @return
*/
public static String getLastOneYearDay() {
return getLastNumberDayBeforeYesterDay(365);
}
/**
* 取近三个月
*
* @author HeCheng
* @time 2010-12-08 21:27:41
* @return
*/
public static String getLastThreeMonthDay() {
return getLastNumberDayBeforeYesterDay(90);
}
/**
* 取近一个月
*
* @author HeCheng
* @time 2010-12-08 21:27:41
* @return
*/
public static String getLastMonthDay() {
return getLastNumberDayBeforeYesterDay(30);
}
/**
* 取近一周
*
* @author HeCheng
* @time 2010-12-08 21:27:41
* @return
*/
public static String getLastWeekDay() {
return getLastNumberDayBeforeYesterDay(7);
}
/**
* 取昨天的前XX天
*
* @author HeCheng
* @time 2010-12-08 21:06:08
* @param number
* @return
*/
public static String getLastNumberDayBeforeYesterDay(int number) {
String yesterDay = getYesterdayOrTomorrow(getNowDate(), -1);
return getLastNumberDay(yesterDay, number);
}
/**
* 取之前XX天
*
* @author HeCheng
* @time 2010-12-08 21:06:08
*/
@SuppressWarnings("deprecation")
public static String getLastNumberDay(String day, int number) {
String ntime = "";
try {
SimpleDateFormat df = new SimpleDateFormat("yyyy-MM-dd");
Date startDate = df.parse(day);
Date endDate = null;
endDate = new Date(startDate.getTime()
- (((long) number * (long) 24 * (long) 3600 * (long) 1000)));
ntime = endDate.getYear() + 1900 + "-" + (endDate.getMonth() + 1)
+ "-" + endDate.getDate();
} catch (Exception e) {
System.out.println(e);
}
return ntime;
}
/**
* 取上个月的昨天
*
* @author HeCheng
* @time 2010-12-08 18:41:14
* @param yesterday
* @return
*/
@SuppressWarnings("deprecation")
public static String getYesterdayOnLastMonth(String yesterday) {
String ntime = "";
try {
SimpleDateFormat df = new SimpleDateFormat("yyyy-MM-dd");
Date startDate = df.parse(yesterday);
Date endDate = null;
endDate = new Date(startDate.getTime()
- (((long) 30 * (long) 24 * (long) 3600 * (long) 1000)));
ntime = endDate.getYear() + 1900 + "-" + (endDate.getMonth() + 1)
+ "-" + endDate.getDate();
} catch (Exception e) {
System.out.println(e);
}
return ntime;
}
/**
* 取今年第一天
*
* @author HeCheng
* @time 2010-12-08 18:44:12
* @param nowDate
* @return
*/
@SuppressWarnings("deprecation")
public static String getFirstDayInYear(String nowDate) {
String ntime = "";
try {
SimpleDateFormat df = new SimpleDateFormat("yyyy-MM-dd");
Date startDate = df.parse(nowDate);
ntime = startDate.getYear() + 1900 + "-01-01";
} catch (Exception e) {
System.out.println(e);
}
return ntime;
}
/**
* 取本季度第一天
*
* @author HeCheng
* @time 2010-12-08 18:46:33
* @param nowDate
* @return
*/
@SuppressWarnings("deprecation")
public static String getFirstDayInThisQuarter(String nowDate) {
String ntime = "";
int nowMonth;
int nowYear;
try {
SimpleDateFormat df = new SimpleDateFormat("yyyy-MM-dd");
Date startDate = df.parse(nowDate);
nowMonth = startDate.getMonth() + 1;
nowYear = startDate.getYear() + 1900;
while (true) {
if (nowMonth >= 10) {
ntime = nowYear + "-10-01";
break;
}
if (nowMonth >= 7) {
ntime = nowYear + "-07-01";
break;
}
if (nowMonth >= 4) {
ntime = nowYear + "-04-01";
break;
}
if (nowMonth >= 1) {
ntime = nowYear + "-01-01";
break;
}
}
} catch (Exception e) {
System.out.println(e);
}
return ntime;
}
/**
* 取昨天
*
* @author HeCheng
* @time 2010-12-08 20:27:21
* @return
*/
public static String getYesterDay() {
return getYesterdayOrTomorrow(getNowDate(), -1);
}
/**
* 取明天
*
* @author HeCheng
* @time 2010-12-08 20:27:21
* @return
*/
public static String getTomorrow() {
return getYesterdayOrTomorrow(getNowDate(), 1);
}
/**
* 取今天
*
* @return
*/
@SuppressWarnings("deprecation")
public static String getNowDate() {
Date date = new Date();
int nowMonth = date.getMonth() + 1;
int nowYear = date.getYear() + 1900;
int day = date.getDate();
String startTime = nowYear + "-" + nowMonth + "-" + day;
return startTime;
}
/**
* 取时间段
*
* @author HeCheng
* @time 2010-12-08 18:34:22
* @param startTime
* @param endTime
* @return
*/
@SuppressWarnings("deprecation")
public static List<String> getTimes(String startTime, String endTime) {
List<String> dayList = new ArrayList<String>();
try {
SimpleDateFormat df = new SimpleDateFormat("yyyy-MM-dd");
Date startDate = df.parse(startTime);
Date endDate = df.parse(endTime);
String now = "";
for (long i = startDate.getTime(); i <= endDate.getTime(); i += (long) 24
* (long) 3600 * (long) 1000) {
Date date = new Date(i);
now = date.getYear() + 1900 + "-" + (date.getMonth() + 1) + "-"
+ date.getDate();
dayList.add(now);
}
} catch (Exception e) {
System.out.println(e);
}
return dayList;
}
/**
* 取当前月第一天
*
* @author HeCheng
* @time 2010-12-08 18:34:29
*
* @return
*/
@SuppressWarnings("deprecation")
public static String getMonthFirstDay() {
Date date = new Date();
int nowMonth = date.getMonth() + 1;
int nowYear = date.getYear() + 1900;
String startTime = nowYear + "-" + nowMonth + "-1";
return startTime;
}
/**
* 取明天或昨天
*
* @param nowDate
* @param con
* @return
*/
@SuppressWarnings("deprecation")
public static String getYesterdayOrTomorrow(String nowDate, int con) {
String ntime = "";
try {
SimpleDateFormat df = new SimpleDateFormat("yyyy-MM-dd");
Date startDate = df.parse(nowDate);
Date endDate = null;
if (con == -1) {
endDate = new Date(startDate.getTime() - (long) 24
* (long) 3600 * (long) 1000);
} else {
endDate = new Date(startDate.getTime() + (long) 24
* (long) 3600 * (long) 1000);
}
ntime = endDate.getYear() + 1900 + "-" + (endDate.getMonth() + 1)
+ "-" + endDate.getDate();
} catch (Exception e) {
System.out.println(e);
}
return ntime;
}
/**
* 取月的最后一天
*
* @param time
* @return
*/
@SuppressWarnings("deprecation")
public static String getMonthEndDay(String time) {
String ntime = "";
try {
SimpleDateFormat df = new SimpleDateFormat("yyyy-MM-dd");
Date startDate = df.parse(time);
int nowMonth = startDate.getMonth() + 1;
int nextMonth = nowMonth + 1;
int nowYear = startDate.getYear() + 1900;
String nextTime = nowYear + "-" + nextMonth + "-1";
Date tmpDate = df.parse(nextTime);
Date endDate = new Date(tmpDate.getTime() - 24 * 3600 * 1000);
ntime = endDate.getYear() + 1900 + "-" + (endDate.getMonth() + 1)
+ "-" + endDate.getDate();
} catch (Exception e) {
System.out.println(e);
}
return ntime;
}
}
分享到:
相关推荐
"DateHelper"是一个专门针对日期和时间戳转换的库,它支持在浏览器环境和Node.js环境中使用,这使得开发者在跨平台开发时能够有一致的日期处理体验。下面将详细探讨DateHelper库的特性、用法以及如何在实际项目中...
为了简化这些操作,开发者常常会创建一个便利扩展,例如"swift-DateHelper-NSDate在Swift中的便利扩展"项目,它为`NSDate`(Objective-C的日期表示类)提供了额外的方法,以便在Swift中更方便地使用。 DateHelper...
简单的约会助手,可以帮助你让你的生活更轻松。
日期助手.js 一组简单的原型,用于简单的日期格式化。 用法如下: 要获取时间值,请使用以下命令: var time = new Date().timeNow('hh:mm:ss'); 将返回10:58:16 var time = new Date().timeNow('hh:mm');...
日期助手 高性能的Swift日期扩展,用于创建,转换,比较或修改日期。 能力 从字符串创建日期 提供两个初始化程序以从字符串创建日期。 detectFromString: init?(detectFromString string: String) 使用...
* 获取DateHelper实例, 使用当前时间作为基准时间 * * @return Date */ public static DateUtils getInstance() { return new DateUtils(null); } /** * 获取年的第一天 * * @param offset ...
这样,我们就可以在项目中通过`DateHelper.sharedInstance.stringFromDate(someNSDate)`或`DateHelper.sharedInstance.dateFromString(someDateString)`方便地进行日期转换,无需每次都创建新的`NSDateFormatter`...
`DateHelper.cs` 文件很可能定义了一个名为 `DateHelper` 的类,这个类包含了将公历日期转化为农历日期,以及农历日期转化为公历日期的方法。在C#中,我们可以利用`DateTime`结构体来处理日期和时间,而转换农历则...
public static DateHelper getInstance(Date fiducialDate) { return new DateHelper(fiducialDate); } public static DateHelper getInstance() { return new DateHelper(null); } ``` 这两个方法都是为了创建`...
在给定的标题“Java常用日期辅助类”中,我们可以推测这篇博文可能探讨了Java中的一些核心日期处理工具,如`java.util.Date`,`java.time`包中的类,以及自定义的日期助手类`DateHelper.java`。 `java.util.Date`是...
日期处理在Android应用中很常见,比如记录创建时间、显示日期标签等,DateHelper可以简化这部分的代码。 5. **IOUtils.java**: IOUtils通常封装了输入/输出流的操作,例如读取文件、写入文件、复制流等。在处理...
- `DateHelper`:日期时间处理,如格式化日期,计算时间差等。 - `EncryptionHelper`:加密解密功能,可能包含AES、DES、MD5等算法。 - `CacheHelper`:缓存管理,用于存储和获取数据,提高性能。 - `MailHelper...
2. 日期时间操作:DateHelper类可能包含了处理日期时间的方法,如获取当前时间、日期之间的比较、时间间隔计算等。这有助于开发者在处理时间相关的业务时更加得心应手。 3. 文件系统交互:FileSystemHelper类通常...
UDF(Universal Disk Format)文件系统是一种开放标准的文件系统,广泛应用于光盘、移动硬盘、USB存储设备等,尤其在DVD和蓝光光盘上是标准的文件系统。这个压缩包包含了一系列与UDF相关的资源,如协议文档、结构...
DateHelper 类是 Date 日期工具类的一个实现,提供了多种方法来操作和格式化日期。 1. 日期格式化 DateHelper 类提供了多种方法来格式化日期,例如 formatDate 方法可以将 Date 对象格式化为指定的日期格式字符串...
JavaScript中的日期处理是编程中常见的任务之一,尤其是在创建动态用户界面或者进行数据分析时。这个话题主要涉及如何将时间戳转换为可读的日期格式。在JavaScript中,`Date`对象是处理日期和时间的主要工具。...
多蒂 ...include ActionView :: Helpers :: DateHelper include ActionView :: Helpers :: TextHelper include ActionView :: Helpers :: NumberHelper distance_of_time_in_words 以此为例: >> dis
类`DateHelper`中包含了一些静态方法,如`toSeconds()`、`toMinutes()`、`toHours()`、`toDays()`、`toMonths()`和`toYears()`。这些方法将时间差(以毫秒为单位)转换为对应的秒、分、小时、天、月和年的整数。...
例如,在我们的示例中,我们创建了一个名为`DateHelper`的静态类,并在其中定义了一个名为`DateToString`的扩展方法,这个方法接收一个`DateTime`类型的参数并返回格式化的字符串。通过`this DateTime dt`,我们声明...
可以使用点号(.)分隔各个层级,如`myApp.utils.dateHelper`。 6. 避免使用保留字:JavaScript有一些保留字,如`for`、`if`等,这些不能用于变量或函数的命名。 7. 避免使用误导性的名字:名称应准确反映变量或...