`
zhujinguo
  • 浏览: 131947 次
  • 性别: Icon_minigender_1
  • 来自: 杭州
社区版块
存档分类
最新评论

java Calender类 日期的加减

阅读更多
    *  今 天是2006年11月3日 是今年的第307天 c.getTime()的結果: Fri Nov 03 11:31:47 CST 2006 new Date()的結果: Fri Nov 03 11:31:47 CST 2006 17天后是Thu Feb 02 11:31:47 CST 2006


public class test1 {

    public static void main(String[] args) {
          Calendar c = Calendar.getInstance();
          int year=c.get(Calendar.YEAR);
          

            int month=c.get(Calendar.MONTH)+1;
          int date=c.get(Calendar.DATE);
          System.out.println("今天是"+year+"年"+month+"月"+date+"日");
          System.out.println("是今年的第"+c.get(Calendar.DAY_OF_YEAR)+"天");
          System.out.println("c.getTime()的結果: "+c.getTime());
          System.out.println("new Date()的結果: "+new Date());
          c.set(Calendar.DAY_OF_YEAR, date + 30);
          System.out.println("17天后是"+c.getTime());
      }

}


/**  
     * 得到几天前的时间  
      *   
      * @param d  
      * @param day  
      * @return  
      */  
     public static Date getDateBefore(Date d, int day) {   
         Calendar now = Calendar.getInstance();   
         now.setTime(d);   
         now.set(Calendar.DATE, now.get(Calendar.DATE) - day);   
         return now.getTime();   
     }  
  /**  
      * 得到几天后的时间  
      *   
      * @param d  
      * @param day  
      * @return  
      */  
     public static Date getDateAfter(Date d, int day) {   
        Calendar now = Calendar.getInstance();   
         now.setTime(d);   
        now.set(Calendar.DATE, now.get(Calendar.DATE) + day);   
         return now.getTime();   
     }  


注意int month=c.get(Calendar.MONTH)+1哦,好像系统是从0开始计月份,到了12月就归零了。所以单独取月份时,要在后面加一才能得到当前的月份。


calender日期加减后赋值给Date类型
		SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
		String time=sdf.format(new Date()); 
		Calendar cd = Calendar.getInstance();
		
		try {
			cd.setTime(sdf.parse(time));
		} catch (ParseException e) {			
			e.printStackTrace();
		}
        cd.add(Calendar.DATE, 1);//增加一天     
         //cal.add(Calendar.DATE, -1);      //减一天 
         //cd.add(Calendar.MONTH, 1);//增加一月 
        Date date=cd.getTime(); 
        System.out.println(sdf.format(date));



将yyyy//MM/dd的字符串类型转为Date类型

							 SimpleDateFormat format = new SimpleDateFormat("yyyy/MM/dd");
							 str12 = format.parse(str12_1);


在excel导入数据时,日期类型的数据直接获取
					CellType t1 = st.getCell(11, row).getType();
					Date regDate = null;
					Date str12=null;//出生年月,不能为空
					if (t1 == CellType.DATE)
					{
					    DateCell regCell = (DateCell) st.getCell(11, row);  
					    str12 = regCell.getDate(); 
					}
分享到:
评论
1 楼 kyelxy 2011-04-19  
不错,很实用

相关推荐

    java Calender类 日期的加减.docx

    Java 中的 Calendar 类提供了日期和时间的操作功能,本文将对 Calendar 类的日期加减操作进行详细的介绍和分析。 Calendar 类的日期加减操作 Calendar 类的日期加减操作可以通过 set() 方法实现,例如,设置当前...

    java对日期的加减操作

    使用 java.util.Calender 实现日期加减 Java 中的 `Calendar` 类提供了对日期的加减操作。可以使用 `Calendar` 类的 `set` 方法和 `get` 方法来实现日期的加减操作。例如,下面是使用 `Calendar` 类实现日期加 1 天...

    小例子--当前时间加三天时间减一秒

    ### 小例子--当前时间加三天时间减一秒 在Java编程语言中,处理日期与时间是非常常见的需求之一。本示例通过一个简单的程序演示了如何获取当前时间,并在此基础上增加三天然后减去一秒钟的操作。这有助于理解Java中...

    java的calendar具体用法

    `Calendar`类提供了一系列的功能来帮助开发者处理复杂的日期计算问题,比如日期的加减、获取特定日期组件等。 #### 二、Calendar类的基本概念 `Calendar`类是一个抽象类,它代表了一个特定时刻(瞬间)的具体日期...

    Java编写的日历源代码

    4. 日期计算:处理用户点击日期,进行日期加减、比较等操作。 5. 格式化显示:将日期转换为用户友好的字符串格式,如"2022年1月1日"。 此外,为了支持2011年至2022年的范围,开发者需要确保日历类能正确处理闰年。...

    Calender

    在这个项目"Calender"中,我们可以预见到它会包含有关如何使用Java `Calendar`类来管理日期、时间、以及进行相关计算的示例代码和教程。 `Calendar`类在`java.util`包下,是Java中的一个非常重要的时间工具类。它不...

    c/c++ calendar

    这些都需要对日期进行操作,如比较、加减和查找。 至于项目中提到的"CALENDER"文件,它可能是日历程序的源代码文件,可能包含了上述功能的实现。如果你在SourceForge上找到了这个资源,可以下载并学习其中的实现...

    2021-2022计算机二级等级考试试题及答案No.14621.docx

    16. 日期型数据可以与整数进行加减运算,例如加上或减去天数。 17. 在查询设计器中,如果不想显示某个字段,只需取消该字段的“显示”选项。 18. C++程序的基本单位是函数,一个源程序由多个函数组成。 19. 生成...

    2021-2022计算机二级等级考试试题及答案No.14405.docx

    - **Calender**:日历控件,属于ASP.NET服务器控件,用于提供日历选择功能。 - **Wizard**:向导控件,属于ASP.NET服务器控件,用于指导用户完成一系列步骤操作。 **正确答案**:A(Input) #### 2. 下列哪些是...

Global site tag (gtag.js) - Google Analytics