`
wyl15982038375
  • 浏览: 7174 次
  • 性别: Icon_minigender_1
  • 来自: 成都
社区版块
存档分类
最新评论

根据开始时间和结束时间相差天数,生成期间每一天的日期

    博客分类:
  • java
阅读更多


/**
* 根据开始时间和结束时间相差天数,生成期间每一天的日期
* @param startDate 开始时间
* @param days 前后时间相差天数
* @return
*/
public static List<String> createYMD(Date startDate,Long days){
List<String> ls=new ArrayList<String>();
String ymd=null;
for(int i=0;i<=days;i++){
ymd=TimeRule.dateTodateStr(TimeRule.plusDate(startDate, i));
ls.add(ymd);
}
return ls;
}

/**
* 将日期转换成 日期(yyyy-MM-dd)字符串.
* @param date 日期
* @return
*/  
public static String dateTodateStr(final Date date) {
return dateToStr(date, "yyyy-MM-dd");
}

/**
* 将日期转换成指定格式的字符串.
* @param date 日期
* @param dateFormat 日期格式. 如果为空,默认为:yyyy-MM-dd HH:mm:ss.
* @return
*/  
public static String dateToStr(final Date date, String dateFormat) {
if (date == null){
//log.debug("未知时间");
return "";
//return "未知时间";
}
try{
if(dateFormat == null || dateFormat.trim().length() ==0)
dateFormat = "yyyy-MM-dd HH:mm:ss";
DateFormat fmt = new SimpleDateFormat(dateFormat.trim());
return fmt.format(date);
}catch(Exception ex){
log.error("将日期转换成指定格式("+ dateFormat +")的字符串时失败!错误原因:"+ex.getMessage());
return "";
     //return "日期格式不匹配";
}
}


/**
* 返回加上指定天数的日期.
* @param date 将运算日期.
* @param day 加上的天数.
* return
*/
public static Date plusDate(final Date date, final int day){
try{
java.util.Calendar calendar=java.util.Calendar.getInstance();  
        calendar.setTime(date);
        int currDay = java.util.Calendar.DAY_OF_MONTH;
       
        calendar.set(currDay, calendar.get(currDay) + day); //让日期加 day天

        return calendar.getTime();
}catch(Exception ex){
return null;
}
}
分享到:
评论

相关推荐

    计算日期相差天数

    这个任务的标题"计算日期相差天数"直指一个基本的日期处理功能。在描述中提到的"输出开始时间,输入总共天数;每个月多少天和到什么时间结束",暗示我们需要实现一个程序或功能,它不仅能够计算日期间隔,还能处理...

    Delphi 计算两个日期之间的时间差(天数).rar

    在Delphi编程环境中,计算两个日期之间的时间差是一项常见的任务,尤其对于开发涉及日期和时间处理的应用程序来说。本示例源码专为Delphi初学者设计,它演示了如何在Delphi 7中计算两个日期之间的天数差异。下面我们...

    MSSQL 计算两个日期相差的工作天数的语句

    在SQL Server中,有时我们需要计算两个日期之间相差的工作日数量,即排除周末和法定假日的天数。在提供的示例中,给出了两种不同的T-SQL函数实现方式来完成这个任务,这两种方法都针对MSSQL数据库系统。我们将分别...

    使用Python的Dataframe取两列时间值相差一年的所有行方法

    3. 然后将map函数应用到'report_date'列,生成一个新的列或Series,里面包含对应的上一年同一天的日期。 4. 最后,通过比较新生成的列与'date_1y_ago'列的数据是否相同来筛选出两列时间值相差一年的所有行。代码...

    通过日期算星期的C51源程序

    `week()`函数用于计算给定日期是这一年的第几天,并进一步推算出这一天是星期几。算法首先计算从1900年到目标年份之间的总天数,然后累加目标年份中前几个月的天数,最后加上目标日期,得到自1900年1月1日起的总天数...

    sql高级进阶

    - 列出一年中每个季度的开始日期和结束日期:计算并列出一年四季的开始和结束日期。 - 确定某个给定季度的开始日期和结束日期:计算特定季度的开始和结束日期。 - 补充范围内丢失的值:使用CONNECT BY或递归查询...

    万年历的编写 包括程序文档

    通过循环遍历月份的每一天,生成相应的日历布局。 课程设计的目的在于将理论知识付诸实践,提高编程技能和问题解决能力。通过这个项目,学生可以深入理解日期处理、错误处理、函数调用以及模块化编程等概念。在实现...

    C++算法系列之日历生成的算法代码

    公元前7-6世纪,巴比伦人就使用了星期制,一个星期中的每一天都有一个天神掌管。这一规则后来传到古罗马,并逐渐演变成现在的星期制度。 计算星期几 如何知道某一天到底是星期几?除了查日历之外,是否有办法推算...

    PHP获取指定时间段之间的 年,月,天,时,分,秒

    例如,网上的大多数示例可能仅将一年当作365天、一个月当作30天来简单计算,而忽略了闰年和每个月不同天数的影响。这种粗略的计算方法在大多数情况下是不够准确的。因此,在实际应用中,我们应该尽可能准确地计算...

    Excel-VBA宏编程实例源代码-自定义函数-计算日期差.zip

    4. **日期运算**:在VBA中,日期和时间是以双精度数值表示的,每个整天对应1天。因此,两个日期之间的差值可以直接相减得到天数。例如,`Date1 - Date2`会返回一个数值,代表Date1和Date2之间相差的天数。 5. **...

    在dataframe两列日期相减并且得到具体的月数实例

    在数据分析和处理中,pandas的DataFrame是一种非常强大的工具,特别是在处理时间序列数据时。本篇文章将详细讲解如何在DataFrame中对两列日期进行相减,并得到相差的具体月数。这个操作在金融、气象学、市场营销等多...

    PHP时间格式控制符对照表分享

    PHP时间格式控制符是用于格式化日期和时间的特殊字符,它们...例如,`date('Y-m-d H:i:s')`将生成形如"2023-03-15 14:30:45"的日期时间字符串。通过熟练掌握这些控制符,开发者可以更灵活地处理PHP中的日期和时间操作。

    “蓝桥杯”试题

    根据中国的一句俗语“三天打鱼两天晒网”,一个人从1990年1月1日开始遵循这个模式,我们需要确定在未来的某一天他是在“打鱼”还是“晒网”。 **解题策略** 首先,我们需要计算自1990年1月1日以来的总天数。考虑到...

    java小练习,Java练习小程序,Java必用

    - 示例:已知当前日期为1月1日,另一个日期为2月6日,求这两个日期相差多少天。 - 使用Calendar类或者LocalDate类进行日期计算。 15. **三个数排序**: - 给定三个整数,按升序排列输出。 - 可以使用临时变量...

    100个常用excel函数使用手册

    - **知识点**: EOMONTH 函数用于获取某个日期所在月份的最后一天,或指定月份前后的最后一天。 #### 五、其他函数 1. **ADDRESs (地址函数)** - **功能**: 创建以文本形式表示的单元格地址。 - **示例**: `=...

    php判断/计算闰年的方法小结【三种方法】

    闰年是指那些比普通年份多出一天(即2月有29天)的年份,通常每四年出现一次。然而,根据格里高利历的规定,闰年有一些特定的规则。下面我们将详细探讨三种PHP判断闰年的方法。 1. **基于整除条件的方法** 这是最...

    ASP中通过该日历算法实现的具体代码

    通过这种方式,我们可以动态生成一个符合当前日期或用户指定日期的日历,并提供向前和向后翻页的功能。同时,通过CSS样式,我们可以自定义日历的显示效果,如字体、颜色等。 总之,这个ASP代码实例展示了如何利用...

    《Java语言程序设计(一)》课后习题答案(课程编号04747)

    **面向对象技术**是一种编程范式,它通过将程序分解成一系列的对象和类来组织代码,每个对象都拥有自己的属性和行为。 **面向对象技术的优点**: - **封装**:将数据和操作数据的方法封装在一起,提高代码的安全性...

Global site tag (gtag.js) - Google Analytics