`
heyangjava
  • 浏览: 46566 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

setLenient java计算两个日期之间的天数

    博客分类:
  • java
 
阅读更多
import java.text.DateFormat;
import java.text.SimpleDateFormat;
import java.util.Calendar;
import java.util.Date;
import java.util.*;
import java.io.*;
class Test{
       
     public static void main(String args[])
     { 
        //开始日期
        String startdate = "";
       
        //终了日期
        String enddate = "";
       
        //相差天数
        String days = "";

        //实例化一个对象
        Test getDate = new Test();

        //输入开始日期
        System.out.println("请输入开始日期 : ");
       
        //读取开始日期
        startdate = getDate.ReadDate();
       
        //输入终了日期
        System.out.println("请输入终了日期: ");

        //读取终了日期
        enddate =  getDate.ReadDate();
       
        Calendar startcalendar = Calendar.getInstance();

        Calendar endcalendar =Calendar.getInstance();

        try{
       
          //转化成日期格式
          //Locale local = null ;
          //DateFormat dd = new SimpleDateFormat("yyyyMMdd",local); 抛出异常
            //DateFormat dd = null; 空指针异常
            DateFormat dd = new SimpleDateFormat("yyyyMMdd");
       dd.setLenient(false);
          //把输入的开始日期转化成日期格式
            Date date = dd.parse(startdate);
            startcalendar.setTime(date);
           
           //把输入的终了日期转化成日期格式
           endcalendar.setTime(dd.parse(enddate));
        }catch(Exception e)
         {
          //e.printStackTrace();
          System.out.println("您输入的日期格式不正确");
         }

        //计算出开始日期和结束日期之间相差几天 
        long longdays = getDate.daysBetween(startcalendar,endcalendar);
       
System.out.println("您输入的第一个日期是:"+startdate);
System.out.println("您输入的第二个日期是:"+enddate);
System.out.println("相差"+longdays+"天");

    
     }
   
    //读取开始日期和终了日期的方法
    public String ReadDate()
     { 
        //定义一个接受字符串
        String date="";
        //读取输入的字符串
     try{
        BufferedReader in = new BufferedReader(new InputStreamReader(System.in));
          date = in.readLine();
      
         }catch(IOException e){}

          return date.toString();
     }
   

    //计算出开始日期和结束日期之间相差几天的方法
    public static long daysBetween(Calendar startDate, Calendar endDate)
    {  
      long days=1;
        //求出相差的毫秒数
        days =startDate.getTimeInMillis() - endDate.getTimeInMillis();
        //把相差毫秒数转化为天数
        days = ((days/1000)/3600)/24;
       
        return days;
     
    
    }
    
   
}
    
分享到:
评论

相关推荐

    一段验证日期的有效性的JAVA代码

    在Java编程中,验证日期的有效性是常见的任务,特别是在处理用户输入或系统日期时。这段代码主要用于检查一个日期字符串是否符合特定的日期格式,并且在实际的日期范围内。以下是一段可能的Java代码来实现这个功能:...

    java时间操作函数汇总[参考].pdf

    计算两个日期之间的天数差可以通过以下方式实现:获取两个 `Calendar` 对象,然后使用 `getTimeInMillis()` 得到每个日期的毫秒值,相减后除以一天的毫秒数(`1000 * 60 * 60 * 24`)。 7. 其他常用方法: - `...

    java中将string类型转换成timestamp类型

    在Java编程语言中,String类型和Timestamp类型是两种不同的数据类型,前者用于存储字符串数据,而后者用于存储时间戳数据。然而,在实际开发中,我们经常需要将String类型转换成Timestamp类型,以便于在数据库中存储...

    java时间转换.pdf

    接下来,我们看到了两个SimpleDateFormat对象的创建: ```java DateFormat format1 = new SimpleDateFormat("yyyy-MM-dd"); DateFormat format2 = new SimpleDateFormat("yyyyMMddHHmmss"); ``` 这些代码行表明,...

    时间类型DateTime的处理.docx

    在处理日常日期计算时,通常会用到这个类。 2. **`java.sql.Date`**: 这个类是专门为与数据库交互设计的,尤其是处理像Oracle这样的数据库中的`DATE`类型。它只存储日期,不包含时间部分。因此,如果你从Oracle...

    时间类型DateTime的处理.pdf

    在IT领域,尤其是在Java编程中,时间和日期的处理是一项常见的任务。`DateTime`类型是用于表示日期和时间的,而在不同的数据库系统中,如Oracle和SQL Server,它们对时间类型的处理方式有所不同。本文将深入探讨如何...

    Kettle中的JScript控件调用Java类

    本案例中我们将创建一个名为`DateUtil`的Java类,该类提供日期格式化的方法。 ```java package com.test; import java.text.SimpleDateFormat; import java.util.Date; public class DateUtil { /** yyyy-MM-dd...

    SpringMVC对日期类型的转换示例

    这样,Spring MVC会在处理所有日期类型时使用这个转换器: ```java public class DateConverter implements Converter, Date> { @Override public Date convert(String source) { SimpleDateFormat dateFormat ...

    springmvc类型转换.md

    这个`CustomDateEditor`类实现了`setAsText`和`getAsText`方法,分别用于将字符串转换为日期对象以及将日期对象转换为字符串。 #### 四、使用`Converter`实现全局类型转换 除了上面介绍的方法之外,还可以使用`...

    Spring_MVC_3.0实战指南

    这段代码注册了一个自定义的日期编辑器,用于将请求中的字符串格式转换为 `Date` 对象,并且可以设置日期格式不宽松。 #### 数据模型控制 在 Spring MVC 中,可以通过 `Model` 或 `ModelMap` 对象向视图传递数据。...

    andorid开发经验分享

    andorid开发经验分享andorid开发经验分享

    深入理解Spring MVC的数据转换

    PropertyEditor的核心功能是将一个String转换为一个Java对象。从Spring 3.0开始,Spring添加了一个通用的类型转换模块,即org.springframework.convert包。ConversionService是该包的核心组件,可以通过使用...

    详解SpringMVC注解@initbinder解决类型转换问题

    在上面的代码中,我们使用了 @InitBinder 注解来标注 initBinder 方法,并在该方法中使用 WebDataBinder 的 registerCustomEditor 方法来注册一个自定义的日期编辑器,用于将字符串类型的日期转换为 Date 类型。...

    Retrofit-on-android-with-Kotlin

    #如何在Kotlin上的Android上使用Retrofit #示例代码如何使用翻新网络库与应用服务器进行交互。 #让我们开始弄脏我们的手 ...#val gson = GsonBuilder().setLenient().create() #//改造

    Springboot整合Gson报错问题解决过程

    java.lang.invoke.MethodHandleNatives.resolve(Native Method) The following method did not exist: com.google.gson.GsonBuilder.setLenient()Lcom/google/gson/GsonBuilder; The method's class, ...

Global site tag (gtag.js) - Google Analytics