- 浏览: 1370999 次
- 性别:
- 来自: 北京
文章分类
- 全部博客 (551)
- 计划 (4)
- java (115)
- oracle (60)
- ajax (3)
- javascript (64)
- 计算机操作技巧集 (11)
- 近期关注话题 (10)
- 随想 (13)
- html (6)
- struts (15)
- hibernate (16)
- spring (2)
- game (0)
- Eglish (10)
- DisplayTag (6)
- jsp (18)
- css (3)
- eclipse (3)
- 其他知识 (8)
- 备用1 (12)
- 备用2 (1)
- 笑话-放松心情 (9)
- 设计 (1)
- 设计模式 (1)
- 数据结构 (0)
- office办公软件 (5)
- webwork (0)
- tomcat (2)
- MySql (1)
- 我的链接资源 (5)
- xml (2)
- servlet (0)
- PHP (13)
- DOM (0)
- 网页画图vml,canvas (1)
- 协议 (2)
- 健康 (3)
- 书籍下载 (1)
- jbpm (1)
- EXT (1)
- 自考 (2)
- 报表 (4)
- 生活 (64)
- 操作系统基础知识 (2)
- 测试 (2)
- guice (1)
- google学习 (2)
- Erlang (1)
- LOG4J (2)
- wicket (1)
- 考研 (1)
- 法律 (1)
- 地震 (1)
- 易学-等等相关 (1)
- 音乐 (1)
- 建站 (4)
- 分享说 (3)
- 购物省钱 (0)
- linux (1)
最新评论
-
zenmshuo:
如果使用SpreadJS这一类的表格工具,应该能更好的实现这些 ...
js中excel的用法 -
hjhj2991708:
第一个已经使用不了
jar包查询网站 非常好用! -
jiangmeiwei:
...
中文乱码 我的总结 不断更新 -
gary_bu:
...
response.sendRedirect 中文乱码问题解决 -
hnez:
多谢指点,怎么调试也不通,原来我在<body>&l ...
ExtJs IE ownerDocument.createRange() 错误解决方案
package aaaaaTest; import java.text.DateFormat; import java.text.SimpleDateFormat; import java.util.ArrayList; import java.util.Calendar; import java.util.Date; import java.util.HashMap; import java.util.List; import java.util.Map; public class DateTest1 { /** * @param args */ public static void main(String[] args) { // // TODO Auto-generated method stub // int beginYear = 2007; // int beginMonth = 2; // int beginDay = 7; // // int endYear = 2007; // int endMonth = 8; // int endDay = 17; // GregorianCalendar b = new // GregorianCalendar(beginYear,beginMonth,beginDay); // GregorianCalendar e = new GregorianCalendar(endYear,endMonth,endDay); Map year = new HashMap(); Map month = new HashMap(); Map day = new HashMap(); List listYear = new ArrayList(); List listMonth = new ArrayList(); List listDay = new ArrayList(); String time = "2006-02-1"; String time2 = "2008-05-2"; DateFormat dfYear = new SimpleDateFormat("yyyy"); DateFormat dfMonth = new SimpleDateFormat("yyyy-MM"); DateFormat dfDay = new SimpleDateFormat("yyyy-MM-dd"); /** ***************************************************************************** */ Calendar cYear1 = Calendar.getInstance(); Calendar cYear2 = Calendar.getInstance(); Calendar cMonth1 = Calendar.getInstance(); Calendar cMonth2 = Calendar.getInstance(); Calendar cDay1 = Calendar.getInstance(); Calendar cDay2 = Calendar.getInstance(); try { // cYear1.setTime(dfDay.parse(time)); // cYear2.setTime(dfDay.parse(time2)); // // cMonth1.setTime(dfDay.parse(time)); // cMonth2.setTime(dfDay.parse(time2)); cDay1.setTime(dfDay.parse(time));// 开始日 cDay2.setTime(dfDay.parse(time2));// 结束日 } catch (Exception e) { System.out.println("异常发生!!!111111111"); e.printStackTrace(); } // 逆向思考,由天得到月,由月得到年 String monthTemp = ""; // dfMonth.format(cDay1.getTime());//月 String yearTemp = "";// dfYear.format(cDay1.getTime());//年 List listDayTemp = null;// new ArrayList(); List listMonthTemp = null;// new ArrayList(); while (!cDay1.after(cDay2)) { // listDay.add(dfDay.format(cDay1.getTime()));//天列表 Date dayTemp = cDay1.getTime();// 一天 if (dfYear.format(dayTemp).equals(yearTemp)) {// 同一年 if (dfMonth.format(dayTemp).equals(monthTemp)) {// 同一个月 listDayTemp.add(dfDay.format(dayTemp)); // 增加天 } else {// 不同月 listDayTemp = new ArrayList();// 增加天的列表 monthTemp = dfMonth.format(dayTemp); // if (!day.containsKey(monthTemp)) { // day.remove(monthTemp); // day.put(monthTemp, listDayTemp); // } // if(!month.containsKey(yearTemp)){ // month.remove(yearTemp); // month.put(yearTemp, listMonthTemp); // } listMonthTemp.add(monthTemp);// 增加月 day.put(monthTemp, listDayTemp); } } else {// 不同年 yearTemp = dfYear.format(dayTemp);// 设置年 listYear.add(yearTemp);// 增加年======================================= monthTemp = dfMonth.format(dayTemp);// 设置月 listMonthTemp = new ArrayList();// 增加月列表 listMonthTemp.add(monthTemp);// 增加月 listDayTemp = new ArrayList();// 增加天列表 listDayTemp.add(dfDay.format(dayTemp));// 增加天 month.put(yearTemp, listMonthTemp);// day.put(monthTemp, listDayTemp); } cDay1.add(Calendar.DAY_OF_MONTH, 1);// 增加一天 } //System.out.println("年:\t" + listYear); for(int i=0;i<listYear.size();i++){ System.out.println(); System.out.println(); System.out.println("年:"+listYear.get(i)); System.out.println(); System.out.println(); List monthList =(List)month.get(listYear.get(i)); System.out.println(); System.out.println(); for(int j=0;j<monthList.size();j++){ System.out.print("月:"+monthList.get(j)); if((j+1)%9==0){ System.out.println(); } System.out.println(); System.out.println(); List dayList =(List)day.get(monthList.get(j)); for(int k=0;k<dayList.size();k++){ System.out.print("日:"+dayList.get(k)); if((k+1)%10==0){ System.out.println(); } } System.out.println(); System.out.println(); } System.out.println(); System.out.println(); System.out.println(); } // for(int i=0;i<listMonth.size();i++){ // System.out.println("月:"+listMonth.get(i)); // // } // for(int i=0;i<listDay.size();i++){ // System.out.println("日:"+listDay.get(i)); // } // if(dfYear.format(dayTemp).equals(yearTemp)){//同一年 // //listMonthTemp.add();//增加月 // if (dfMonth.format(dayTemp).equals(monthTemp)) {//同一个月 // listDayTemp.add(dfDay.format(dayTemp)); //增加天 // }else{//不同月 // listDayTemp = new ArrayList();//增加天的列表 // listMonthTemp.add(yearTemp);//增加月 // } // }else{//不同年 // yearTemp = dfYear.format(dayTemp);//设置年 // listYear.add(yearTemp);//增加年 // monthTemp = dfMonth.format(dayTemp);//设置月 // listMonthTemp.add(monthTemp);//增加月 // listDayTemp.add(dfDay.format(dayTemp));//增加天 // } // //------------------------------------------- // if (dfMonth.format(dayTemp).equals(monthTemp)) {//同一个月 // listDayTemp.add(dfDay.format(dayTemp)); //增加天 // }else{//不同月 // listDayTemp = new ArrayList();//增加天的列表 // } // dfDay.format(cDay1.getTime()); // oooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooo // while (!cYear1.after(cYear2)) { // listYear.add(dfYear.format(cYear1.getTime()));// 得到月年 // cYear1.add(Calendar.YEAR, 1);// 每次增加一年 // } // //处理月========================================================================================================================= // int lenYear = listYear.size();//年数 // if(lenYear==1){//一年 // try { // cMonth1.setTime(dfDay.parse(time)); // cMonth2.setTime(dfDay.parse(time2)); // } catch (Exception e) { // } // while (!cMonth1.after(cMonth2)) {//得到月的列表 // listMonth.add(dfMonth.format(cMonth1.getTime())); // cMonth1.add(Calendar.MONTH, 1);// 每次增加一月 // } // year.put(listYear.get(0), listMonth);// // //处理天----------------------------------------------------------------------------- // int lenMonth = listMonth.size();//月数 // if(lenMonth==1){//只有一个月 // try { // cDay1.setTime(dfDay.parse(time)); // cDay2.setTime(dfDay.parse(time2)); // } catch (Exception e) { // } // while(!cDay1.after(cDay2)){ // listDay.add(dfDay.format(cDay1.getTime())); // cDay1.add(Calendar.DAY_OF_MONTH, 1);// 每次增加一天 // } // }else{//多个月 // // } // // }else{//多年 // for (int i = 0; i < lenYear; i++) { // if (i == 0) { // try { // cMonth1.setTime(dfDay.parse(time)); // // cMonth2.setTime(dfDay.parse(time2)); // } catch (Exception e) { // } // } else if (i == lenYear - 1) { // try { // cMonth1.setTime(dfDay.parse(time)); // cMonth2.setTime(dfDay.parse(time2)); // } catch (Exception e) { // } // } else { // try { // cMonth1.setTime(dfDay.parse(time)); // cMonth2.setTime(dfDay.parse(time2)); // } catch (Exception e) { // } // } // } // } // while(!cYear1.after(cYear2)){ // listYear.add(dfYear.format(cYear1.getTime()));//得到月年 // cYear1.add(Calendar.YEAR, 1);//每次增加一年 // } // // while(!cMonth1.after(cMonth2)){ // listMonth.add(dfMonth.format(cMonth1.getTime()));//得到月年 // cMonth1.add(Calendar.MONTH, 1);//每次增加一月 // } // while(!cDay1.after(cDay2)){ // listDay.add(dfDay.format(cDay1.getTime()));//得到月年 // cDay1.add(Calendar.DAY_OF_MONTH, 1);//每次增加一天 // } // System.out.println("年份如下:"); // System.out.println(); // for(int i = 0;i<listYear.size();i++){ // System.out.print(" "+listYear.get(i)); // if((i+1)%5==0)System.out.println(); // } // System.out.println(); // System.out.println(); // System.out.println("月份如下:"); // System.out.println(); // for(int i = 0;i<listMonth.size();i++){ // System.out.print(" "+listMonth.get(i)); // if((i+1)%5==0)System.out.println(); // } // System.out.println(); // System.out.println(); // System.out.println("天如下:"); // for(int i = 0;i<listDay.size();i++){ // System.out.print(" "+listDay.get(i)); // if((i+1)%5==0)System.out.println(); // } // for(int i =0;i<listYear.size();i++){ // month.put(listYear.get(i), listMonth); // } /** ******************************************************************************* */ // // // Calendar c1 = Calendar.getInstance(); // Calendar c2 = Calendar.getInstance(); // try{ // System.out.println("00000000000000 "+dfDay.parse(time)); // c1.setTime(dfDay.parse(time)); // c2.setTime(dfDay.parse(time2)); // }catch(Exception e3){ // System.out.println("wrong occured"); // } // //********************************************************** // // while(!c1.after(c2)){ // //listYear.add(dfDay.); // listMonth.add(dfMonth.format(c1.getTime()));//得到月年 // c1.add(Calendar.MONTH, 1);//每次增加一月 // } // // //********************************************************* // // List list = new ArrayList(); // while(!c1.after(c2)){ // list.add(dfDay.format(c1.getTime())); // //c1.add(Calendar.MONTH, 1); // c1.add(Calendar.DAY_OF_MONTH, 1);//控制增加的单位 // // } // for(int i=0;i<list.size();i++){ // System.out.print(" "+list.get(i)); // if((i+1)%5==0)System.out.println(); // } // System.out.println(list); } }
修改后,主要是去掉多余代码
package aaaaaTest; import java.text.DateFormat; import java.text.SimpleDateFormat; import java.util.ArrayList; import java.util.Calendar; import java.util.Date; import java.util.HashMap; import java.util.List; import java.util.Map; public class DateTest1 { /** * @param args */ public static void main(String[] args) { Map month = new HashMap(); Map day = new HashMap(); List listYear = new ArrayList(); String time = "2006-02-1"; String time2 = "2008-05-2"; DateFormat dfYear = new SimpleDateFormat("yyyy"); DateFormat dfMonth = new SimpleDateFormat("yyyy-MM"); DateFormat dfDay = new SimpleDateFormat("yyyy-MM-dd"); Calendar cDay1 = Calendar.getInstance(); Calendar cDay2 = Calendar.getInstance(); try { cDay1.setTime(dfDay.parse(time));// 开始日 cDay2.setTime(dfDay.parse(time2));// 结束日 } catch (Exception e) { e.printStackTrace(); } // 逆向思考,由天得到月,由月得到年 String monthTemp = ""; //月 String yearTemp = "";// 年 List listDayTemp = null; List listMonthTemp = null; while (!cDay1.after(cDay2)) { Date dayTemp = cDay1.getTime();// 一天 if (dfYear.format(dayTemp).equals(yearTemp)) {// 同一年 if (dfMonth.format(dayTemp).equals(monthTemp)) {// 同一个月 listDayTemp.add(dfDay.format(dayTemp)); // 增加天 } else {// 不同月 listDayTemp = new ArrayList();// 增加天的列表 monthTemp = dfMonth.format(dayTemp); listMonthTemp.add(monthTemp);// 增加月 day.put(monthTemp, listDayTemp); } } else {// 不同年 yearTemp = dfYear.format(dayTemp);// 设置年 listYear.add(yearTemp);// 增加年======================================= monthTemp = dfMonth.format(dayTemp);// 设置月 listMonthTemp = new ArrayList();// 增加月列表 listMonthTemp.add(monthTemp);// 增加月 listDayTemp = new ArrayList();// 增加天列表 listDayTemp.add(dfDay.format(dayTemp));// 增加天 month.put(yearTemp, listMonthTemp);// day.put(monthTemp, listDayTemp); } cDay1.add(Calendar.DAY_OF_MONTH, 1);// 增加一天 } for(int i=0;i<listYear.size();i++){ System.out.println("年:"+listYear.get(i)); List monthList =(List)month.get(listYear.get(i)); for(int j=0;j<monthList.size();j++){ System.out.print("月:"+monthList.get(j)); if((j+1)%5==0){ System.out.println("\n\n\n"); } System.out.println("\n\n\n"); List dayList =(List)day.get(monthList.get(j)); for(int k=0;k<dayList.size();k++){ System.out.print("日:"+dayList.get(k)); if((k+1)%5==0){ System.out.println("\n\n\n"); } } } } } }
发表评论
-
TilesRequestProcessor - Tiles definition factory found for request processor ''
2011-11-03 15:39 2507TilesRequestProcessor - T ... -
jar包查询网站 非常好用!
2009-12-28 11:47 13399java jar包查询 根据类查询所在的java包 http ... -
tomcat 启动错误 java.lang.UnsupportedClassVersionError: Bad version number in .class
2009-11-27 08:53 2260请访问http://ddgrow.com/bad-versio ... -
arrayToString
2009-04-07 09:01 1425原文:http://leepoint.net/notes-ja ... -
native2ascii
2009-04-02 12:00 1195D:\>native2ascii 中国 \u4e2d\u ... -
java swing 架构
2009-03-04 15:03 2325下面是偶尔找到的一篇 相当好的文章 ,针对 java swin ... -
红帽企业5序列号
2009-02-27 09:11 2549这是从[url]http://www.21codes.com/ ... -
中文乱码 我的总结 不断更新
2009-02-23 09:51 2310java中文乱码问题 1、jsp中文乱码 <0& ... -
websphere 数据库连接
2009-02-19 17:47 2130问个问题: 应用服务器: websphere 连接池:pr ... -
打开java控制台的方法
2009-02-10 17:10 3065D:\Program Files\Java\jre6\bin\ ... -
log4j weblogic 问题
2009-01-21 15:08 1948问题是这样的 最初在tomcat5.5下面开发,使用了log ... -
log4j weblogic 问题
2009-01-21 15:07 0问题是这样的 最初在tomcat5.5下面开发,使用了log ... -
java.lang.NoClassDefFoundError in quartz
2008-12-24 15:35 2925quartz-1.5.2.jar tomcat5.5 当使 ... -
java 得到运行时系统中的内存信息
2008-12-19 20:54 1531这个在tomcat下面使用过,在引记录下来,以后方便查找 Ru ... -
log4j
2008-12-13 11:32 905讲解了用xml配置,还有例子,以及对 levelmin lev ... -
servlet 2.3 规范
2008-12-02 20:55 0servlet 2.3 规范 http://www.orio ... -
session 问题
2008-11-26 16:41 1005问个问题,如下: 我要在一个A系统中,通过一个弹出窗口,超链接 ... -
java 反编译工具
2008-10-08 11:03 2001从哪找到的给忘了,用起来不错,放在这里,以后找起来方便 ,有需 ... -
thinking in java 读书笔记
2008-10-06 22:09 1345记录下来,以便以后查看 thinking in java 4t ... -
RSA 算法 java版本<转>
2008-09-23 18:28 2426原文地址:http://www.cs.princeton.ed ...
相关推荐
在Java编程语言中,计算两个日期之间相差的月数是一个常见的任务,这通常涉及到日期处理和时间计算。本文将深入探讨如何使用Java实现这个功能,包括标准库中的API以及一些高级方法。 首先,Java 8引入了`java.time`...
给定两个日期,获取两个日期之间的天数,并获得两个日期之间的日期并输出
通过上述不同数据库系统中的示例可以看出,虽然不同的数据库提供了不同的内置函数来简化计算过程,但其核心思想都是相同的:即先找到两个日期,然后根据这两个日期计算出它们之间的年数和月数差异。在实际应用中,...
首先,我们要明确的是,计算两个日期之间的差值通常涉及到日期间隔的计算,这包括年、月、日三个维度。在C#中,我们可以使用DateTime结构的`Subtract`方法来获取两个日期之间的时间间隔,这将返回一个TimeSpan对象。...
如果日期1减去`dt`所得到的天数整除7的商等于日期2减去`dt`的商,那么这两个日期在同一周。 ```csharp public static bool IsInSameWeek2(DateTime dtS, DateTime dtE) { int days1 = (dtS - dt).Days; int days2...
### JavaScript 计算两个日期相差几周的知识点详解 在日常开发工作中,我们经常会遇到需要处理日期的问题,比如计算两个日期之间的差距等。本篇文章将详细介绍如何使用JavaScript编写一个函数来计算两个日期之间...
这是一个非常简单好用的东东,用于简单计算两个日期之间的差值。
在实际应用中,经常需要计算两个日期之间的差值,尤其是在日程安排、数据分析等领域。这段代码提供了一个JavaScript函数 `functionDateDiff`,用于计算两个日期字符串之间相隔的天数。 #### 函数解析 - **参数**: ...
### 比较两个日期之间相差的天数 在Java编程语言中,比较两个日期之间的差值是一个常见的需求,尤其是在处理日历相关的功能时。本文将详细介绍如何在Java中计算两个日期之间的天数差,并对给出的代码进行解析。 ##...
在JavaScript中,获取两个日期之间的天数差是一个常见的任务,特别是在处理时间和日期相关的应用程序中。这篇博客“JS获得两个时间间隔天数”提供了一个实用的方法来解决这个问题。在这个方法中,我们将探讨如何利用...
在这个名为"计算两个时间相差年月日时分秒.zip"的项目中,开发者创建了一个工具,能够精确地计算出两个日期之间的差值,以年、月、日、小时、分钟和秒的形式呈现。这个功能在多种场景下都非常实用,比如人力资源管理...
根据给定的文件标题“javascript 取两个日期的差值”以及描述“求两个日期的差值,在平常用的应该很多的吧,希望能给你带来帮助...”,我们可以明确地了解到,该文章的主要目的是讲解如何用JavaScript计算两个日期...
### Java中计算两个日期相差几天 在Java编程中,经常需要处理与日期和时间相关的操作。其中一项常见的需求就是计算两个日期之间的差距。本篇文章将详细介绍如何在Java中计算两个日期相差几天,并深入探讨示例代码中...
实现两个数值型的日期相减得出天数的函数。
你可以分别对两个日期调用此函数,然后用第二个日期时间值减去第一个,得到一个表示两者之间差值的`TDateTime`值,再将其转换为秒数。例如,在VB.NET中,你可以使用 `TimeSpan` 对象的 `TotalSeconds` 属性来实现。 ...
现在,我们已经得到了两个日期之间的天数差。为了将这个功能封装成一个可复用的函数,可以这样编写: ```delphi function CalculateDateDifference(const Date1, Date2: TDate): Integer; begin Result := Trunc...
日期加天数,日期减天数得到一个新日期,及两个日期天数相减得到一个天数,纯C语言,不用time.h库,不要加其它库函数。
但是这个日期并不是我们所要的日期,接下来我们要做的就是计算date_start,date_end这两个日期对于根据它们所产生的新的日期之间的时间偏移量,date_start的偏移量(date_start_change)是需要加的,而date_end的这个...
java 两个日期相减得到的天数、毫秒数;获取两个日期中的最大日期;获取两个日期中的最小日期。
### Java中计算两个日期相差天数 在Java中,计算两个日期之间相差的天数是一项常见且实用的功能。本文将详细介绍如何使用`SimpleDateFormat`、`Date`以及`Calendar`类来实现这一功能。 #### 代码解读 首先,我们...