`
xinklabi
  • 浏览: 1591643 次
  • 性别: Icon_minigender_1
  • 来自: 吉林
文章分类
社区版块
存档分类
最新评论

calendar类,日期加减

    博客分类:
  • Java
 
阅读更多

转:http://zhujinguo.iteye.com/blog/702013

*  今 天是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 

Java代码
  1. public class test1 {   
  2.   
  3.     public static void main(String[] args) {   
  4.           Calendar c = Calendar.getInstance();   
  5.           int year=c.get(Calendar.YEAR);   
  6.              
  7.   
  8.             int month=c.get(Calendar.MONTH)+1;   
  9.           int date=c.get(Calendar.DATE);   
  10.           System.out.println("今天是"+year+"年"+month+"月"+date+"日");   
  11.           System.out.println("是今年的第"+c.get(Calendar.DAY_OF_YEAR)+"天");   
  12.           System.out.println("c.getTime()的結果: "+c.getTime());   
  13.           System.out.println("new Date()的結果: "+new Date());   
  14.           c.set(Calendar.DAY_OF_YEAR, date + 30);   
  15.           System.out.println("17天后是"+c.getTime());   
  16.       }   
  17.   
  18. }  
[java] view plaincopy
 
  1. public class test1 {  
  2.   
  3.     public static void main(String[] args) {  
  4.           Calendar c = Calendar.getInstance();  
  5.           int year=c.get(Calendar.YEAR);  
  6.             
  7.   
  8.             int month=c.get(Calendar.MONTH)+1;  
  9.           int date=c.get(Calendar.DATE);  
  10.           System.out.println("今天是"+year+"年"+month+"月"+date+"日");  
  11.           System.out.println("是今年的第"+c.get(Calendar.DAY_OF_YEAR)+"天");  
  12.           System.out.println("c.getTime()的結果: "+c.getTime());  
  13.           System.out.println("new Date()的結果: "+new Date());  
  14.           c.set(Calendar.DAY_OF_YEAR, date + 30);  
  15.           System.out.println("17天后是"+c.getTime());  
  16.       }  
  17.   
  18. }  

 

Java代码
  1. /**    
  2.      * 得到几天前的时间    
  3.       *     
  4.       * @param d    
  5.       * @param day    
  6.       * @return    
  7.       */     
  8.      public static Date getDateBefore(Date d, int day) {      
  9.          Calendar now = Calendar.getInstance();      
  10.          now.setTime(d);      
  11.          now.set(Calendar.DATE, now.get(Calendar.DATE) - day);      
  12.          return now.getTime();      
  13.      }     
  14.   /**    
  15.       * 得到几天后的时间    
  16.       *     
  17.       * @param d    
  18.       * @param day    
  19.       * @return    
  20.       */     
  21.      public static Date getDateAfter(Date d, int day) {      
  22.         Calendar now = Calendar.getInstance();      
  23.          now.setTime(d);      
  24.         now.set(Calendar.DATE, now.get(Calendar.DATE) + day);      
  25.          return now.getTime();      
  26.      }    
[java] view plaincopy
 
  1. /**   
  2.      * 得到几天前的时间   
  3.       *    
  4.       * @param d   
  5.       * @param day   
  6.       * @return   
  7.       */    
  8.      public static Date getDateBefore(Date d, int day) {     
  9.          Calendar now = Calendar.getInstance();     
  10.          now.setTime(d);     
  11.          now.set(Calendar.DATE, now.get(Calendar.DATE) - day);     
  12.          return now.getTime();     
  13.      }    
  14.   /**   
  15.       * 得到几天后的时间   
  16.       *    
  17.       * @param d   
  18.       * @param day   
  19.       * @return   
  20.       */    
  21.      public static Date getDateAfter(Date d, int day) {     
  22.         Calendar now = Calendar.getInstance();     
  23.          now.setTime(d);     
  24.         now.set(Calendar.DATE, now.get(Calendar.DATE) + day);     
  25.          return now.getTime();     
  26.      }    



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


calender日期加减后赋值给Date类型

Java代码
  1. SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");   
  2. String time=sdf.format(new Date());    
  3. Calendar cd = Calendar.getInstance();   
  4.   
  5. try {   
  6.     cd.setTime(sdf.parse(time));   
  7. catch (ParseException e) {               
  8.     e.printStackTrace();   
  9. }   
  10.       cd.add(Calendar.DATE, 1);//增加一天        
  11.        //cal.add(Calendar.DATE, -1);      //减一天    
  12.        //cd.add(Calendar.MONTH, 1);//增加一月    
  13.       Date date=cd.getTime();    
  14.       System.out.println(sdf.format(date));  
[java] view plaincopy
 
  1. SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");  
  2. String time=sdf.format(new Date());   
  3. Calendar cd = Calendar.getInstance();  
  4.   
  5. try {  
  6.     cd.setTime(sdf.parse(time));  
  7. catch (ParseException e) {              
  8.     e.printStackTrace();  
  9. }  
  10.       cd.add(Calendar.DATE, 1);//增加一天       
  11.        //cal.add(Calendar.DATE, -1);      //减一天   
  12.        //cd.add(Calendar.MONTH, 1);//增加一月   
  13.       Date date=cd.getTime();   
  14.       System.out.println(sdf.format(date));  




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

Java代码
SimpleDateFormat format = new SimpleDateFormat("yyyy/MM/dd");   
  1. str12 = format.parse(str12_1);  
[java] view plaincopy
 
  1. SimpleDateFormat format = new SimpleDateFormat("yyyy/MM/dd");  
  2. str12 = format.parse(str12_1);  



在excel导入数据时,日期类型的数据直接获取

Java代码
  1. CellType t1 = st.getCell(11, row).getType();   
  2. Date regDate = null;   
  3. Date str12=null;//出生年月,不能为空   
  4. if (t1 == CellType.DATE)   
  5. {   
  6.     DateCell regCell = (DateCell) st.getCell(11, row);     
  7.     str12 = regCell.getDate();    
  8. }  
分享到:
评论

相关推荐

    日期类的加减及java中所以日期类的操作算法大全

    本文将深入探讨Java中的日期类操作,包括日期的加减运算,以及如何利用不同的日期类进行高效的时间管理。 ### 一、日期类的基本操作 #### 1. 使用Calendar类 `Calendar`类是Java中处理日期和时间的核心类之一,它...

    java对日期的加减操作

    例如,下面是使用 `SimpleDateFormat` 类和 `Date` 类实现日期加减 2 天的代码: ```java Date d = new Date(); SimpleDateFormat df = new SimpleDateFormat("yyyy-MM-dd"); System.out.println("今天的日期:" + ...

    java Calender类 日期的加减.docx

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

    hive时间按月份加减UDF

    这个类需要重写evaluate方法,其中包含按月份加减日期的核心逻辑。你可以使用Java的Calendar或java.time.LocalDate等类来处理日期。 2. **编译和打包**:将Java源码编译成JAR包,这将包含你的UDF实现。 3. **注册...

    解析Date & Calendar类

    对于复杂的日期计算,如加减天数,可以使用Calendar类的方法,如`add()`。 总的来说,Date和Calendar类提供了处理日期和时间的强大功能。Date主要用于存储和传递时间值,而Calendar则用于操作和计算日期。在实际...

    java 日期相加减.doc

    #### 一、利用`java.util.Calendar`进行日期加减 在Java中,`java.util.Calendar`是一个非常强大的类,用于处理与日期和时间相关的各种操作,包括日期的加减。`Calendar`类提供了一系列的方法来获取、设置和操作...

    calendar操作的方式

    `Calendar`类还提供了强大的日期加减功能,具体方法如下: 1. **getNMonthBeforeCurrentDay(int n)**:返回当前日期前n个月的日期,格式为"yyyy-MM-dd"。 - 这个方法首先获取当前日期的`Calendar`实例,然后通过`...

    日期处理工具类

    3. **日期加减**:在Java中,可以使用`java.util.Calendar`类或者Java 8引入的`java.time`包中的类进行日期的加减操作。例如,增加一天: ```java Calendar calendar = Calendar.getInstance(); calendar.add...

    java 日期算法

    Java 中日期类操作算法大全是 Java 日期算法的详细指南,涵盖了日期类的基本操作、日期类的加减、日期类的格式化输出、日期类的计算等多个方面的知识点。 日期类的基本操作 在 Java 中,日期类的基本操作包括设置...

    Calendar时间日期控件

    3. **日期计算**:包括日期的加减、比较、格式化等功能,可能依赖于内置的`Date`对象或第三方库如`moment.js`。 4. **性能优化**:如使用虚拟DOM、懒加载等技术减少不必要的计算和渲染。 **应用场景**: `Calendar...

    hive按月份加减udf范例

    标题"hive按月份加减udf范例"意味着我们将探讨如何在Hive中创建和使用UDF来对日期进行月份级别的加减操作。通常,Hive的标准日期函数可能无法满足这种特定需求,因此我们需要自定义函数来完成这个任务。 描述中的...

    scala代码-scala 获取当前日期,日期的加减等

    这篇主要关注如何在Scala中获取当前日期,以及如何进行日期的加减操作。我们将通过分析`main.scala`中的代码和`README.txt`中的说明来深入理解这些概念。 首先,Scala并没有内置的日期时间类,而是依赖于Java标准库...

    java的calendar具体用法

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

    日历calendar详细代码

    7. **时间单位转换**:`roll`方法允许我们在不改变其他字段的情况下,对指定的日期字段进行加减操作,例如仅增加一天而不改变月份或年份。 在`CalendarViewTest`测试类中,开发者可能会测试上述功能的各种组合,...

    Date与Calendar详解

    `java.util.Calendar`是Java中用于操作日期和时间的抽象类,提供了比`Date`类更全面的日期和时间操作能力,包括时区支持、日历字段的访问以及日期的加减运算等。 ##### 使用Calendar `Calendar`类是抽象的,不能...

    Calendar记事

    9. 博文中的jar包可能提供了一些实用的工具方法,如格式化日期字符串,处理时区转换,或者处理日期的加减操作等,这些都是日常开发中常见的需求。 10. 使用`Calendar`时,需要注意时区(TimeZone)的设置,因为日期...

    Calendar组件

    它们提供了丰富的函数,可以进行日期的加减、时间的计算以及格式化输出。 除了以上提到的库,还有许多其他的日历组件和库,如AngularJS的ng-bootstrap中的ngbCalendar,或是React的react-big-calendar等。这些库...

    Java的日期时间处理类讲解代码( Date 、Calendar、SimpleDateFormat、LocalDateTime)

    1、日期时间计算:本源码资源提供了丰富的示例代码,帮助用户学习如何在Java中进行日期时间的计算,包括日期加减、格式化、解析等操作。 2、时区处理:了解如何使用Java日期时间类处理多时区的情况,包括转换、调整...

    java中Calendar类用法实例详解

    Java 中的 Calendar 类是一个非常重要的类,它提供了许多有用的方法和字段来处理日期和时间相关的操作。下面我们将详细介绍 Java 中 Calendar 类的用法实例。 首先,Calendar 类提供了许多常量字段,例如 DATE、DAY...

Global site tag (gtag.js) - Google Analytics