「java距离天数」java计算多少天

博主:adminadmin 2023-01-07 12:03:08 1036

本篇文章给大家谈谈java距离天数,以及java计算多少天对应的知识点,希望对各位有所帮助,不要忘了收藏本站喔。

本文目录一览:

Java输入任何年月日,计算距离今天有多少天

import java.text.ParseException;

import java.text.SimpleDateFormat;

import java.util.Calendar;

import java.util.Date;

import java.util.Locale;

import java.util.TimeZone;

public class 距离指定时间还有多少天 {

/**

 * 默认时区为北京时间

 */

public static TimeZone DEFAULT_SERVER_TIME_ZONE = TimeZone.getTimeZone("GMT+08:00");

public static void main(String[] args) {

// 输入指定日期

long timeMillis = getTimeInMillis(2019, 2, 5, 0, 0, 0);

Calendar current = Calendar.getInstance(TimeZone.getDefault());

current.setTimeInMillis(System.currentTimeMillis());

Calendar date = Calendar.getInstance(TimeZone.getDefault());

date.setTimeInMillis(timeMillis);

long time = date.getTimeInMillis() - current.getTimeInMillis();

// 天

int day = Math.round(time / 1000 / 60 / 60 / 24);

// 时

int hour = Math.round(time / 1000 / 60 / 60 % 24);

// 分

int minute = Math.round(time / 1000 / 60 % 60);

// 秒

int second = Math.round(time / 1000 % 60);

System.out.println(String.format("%s天%s时%s分%s秒", day, hour, minute, second));

}

/**

 * 设置年、月、日、时、分、秒,并转换成时间戳

 *

 * @param year

 *            年

 * @param month

 *            月

 * @param day

 *            日

 * @param hours

 *            时

 * @param minutes

 *            钟

 * @param seconds

 *            秒

 */

public static long getTimeInMillis(int year, int month, int day, int hours, int minutes, int seconds) {

Calendar calendar = Calendar.getInstance();

calendar.setTimeZone(DEFAULT_SERVER_TIME_ZONE);

calendar.set(year, month - 1, day, hours, minutes, seconds);

SimpleDateFormat format = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss", Locale.getDefault());

format.setTimeZone(DEFAULT_SERVER_TIME_ZONE);

try {

return format.parse(format.format(calendar.getTime())).getTime();

} catch (ParseException e) {

e.printStackTrace();

return 0;

}

}

// js code.

// function getRTime(){

// var EndTime= new Date('2019/02/02 02:02:00'); 

// var NowTime = new Date();

// var t =EndTime.getTime() - NowTime.getTime();

// var d=Math.floor(t/1000/60/60/24);

// var h=Math.floor(t/1000/60/60%24);

// var m=Math.floor(t/1000/60%60);

// var s=Math.floor(t/1000%60);

// var html = "";

// html+= d + " 天";

// html+= h + " 时";

// html+= m + " 分";

// html+= s + " 秒";

// console.log(html);

// }

}

java计算今天距离某天还有多少天?

import java.text.ParseException;

import java.text.SimpleDateFormat;

import java.util.Date;

public class Day {

public static void main(String[] args) {

try {

test("2012-02-29",30);

} catch (ParseException e) {

e.printStackTrace();

}

}

static void test(String d, int day) throws ParseException{

Date date = new Date();

long a = date.getTime();

SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");

long b = sdf.parse(d).getTime();

int success = (int) ((b-a)/(1000*60*60*24)); //1000毫秒*60分钟*60秒*24小时 = 天

System.out.println("距离"+d+"还有"+success+"天");

if(success = day){ //如果距离那天天数等于day

//把值存到某个地方,或者返回回去

}

}

}

//刚写的,你测试下

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

分类: 电脑/网络 程序设计 其他编程语言

问题描述:

比如两个日期:2005-12-31和2006-01-05,怎么才能精确的计算出这两个日期之间差的天数?

望回答的详细一些,谢了先.

解析:

import java.text.ParseException;

import java.text.SimpleDateFormat;

import java.util.Date;

class Test2 {

public static String getDate(){

SimpleDateFormat ft = new SimpleDateFormat("yyyy/MM/dd");

Date dd = new Date();

return ft.format(dd);

}

public static long getQuot(String time1, String time2){

long quot = 0;

SimpleDateFormat ft = new SimpleDateFormat("yyyy/MM/dd");

try {

Date date1 = ft.parse( time1 );

Date date2 = ft.parse( time2 );

quot = date1.getTime() - date2.getTime();

quot = quot / 1000 / 60 / 60 / 24;

} catch (ParseException e) {

e.printStackTrace();

}

return quot;

}

public static void main(String[] args) throws Exception {

String date1 = "2008/8/8";

String date2 = getDate();

long day = getQuot(date1,date2);

System.out.println( "距离 "+date1+" 还有 "+day+" 天" );

}

}

你看一下这段代码,是从今天到2008/8/8的天数。

Date的getTime()方法返回自1970年1月1日午夜(通用时间)以来的毫秒数。

用2008/8/8的getTime()减去今天的getTime()就是这两天相差的毫秒数,1秒=1000毫秒,1分钟=60秒,1小时=60分钟,1天=24小时,然后除除除就得到天数了。

java程序 计算今天距离过去某一天的天数

看不懂,代码中变量n、year、month都是啥意思,从哪里获得的?

而且这种代码还真是要人命,java中有现有的api,你应该选择合适而且简洁的方法

直接构造出过去的date,取得时间,与当前的日期相减,得到的毫秒数做处理

java 程序中判断过去的某一天离现在相差多少天的程序

java可以使用计算日期的天数差,以下是详细代码:

import java.text.ParseException;  

import java.text.SimpleDateFormat;  

import java.util.Calendar;  

import java.util.Date;  

public class test16 {  

    /** 

     * @param args 

     * @throws ParseException  

     */  

    public static void main(String[] args) throws ParseException {  

        // TODO Auto-generated method stub  

        SimpleDateFormat sdf=new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");  

        Date d1=sdf.parse("2012-09-08 10:10:10");  

        Date d2=sdf.parse("2012-09-15 00:00:00");  

        System.out.println(daysBetween(d1,d2));  

  

        System.out.println(daysBetween("2012-09-08 10:10:10","2012-09-15 00:00:00"));  

    }  

      

    /**  

     * 计算两个日期之间相差的天数  

     * @param smdate 较小的时间 

     * @param bdate  较大的时间 

     * @return 相差天数 

     * @throws ParseException  

     */    

    public static int daysBetween(Date smdate,Date bdate) throws ParseException    

    {    

        SimpleDateFormat sdf=new SimpleDateFormat("yyyy-MM-dd");  

        smdate=sdf.parse(sdf.format(smdate));  

        bdate=sdf.parse(sdf.format(bdate));  

        Calendar cal = Calendar.getInstance();    

        cal.setTime(smdate);    

        long time1 = cal.getTimeInMillis();                 

        cal.setTime(bdate);    

        long time2 = cal.getTimeInMillis();         

        long between_days=(time2-time1)/(1000*3600*24);  

            

       return Integer.parseInt(String.valueOf(between_days));           

    }    

      

/** 

*字符串的日期格式的计算 

*/  

    public static int daysBetween(String smdate,String bdate) throws ParseException{  

        SimpleDateFormat sdf=new SimpleDateFormat("yyyy-MM-dd");  

        Calendar cal = Calendar.getInstance();    

        cal.setTime(sdf.parse(smdate));    

        long time1 = cal.getTimeInMillis();                 

        cal.setTime(sdf.parse(bdate));    

        long time2 = cal.getTimeInMillis();         

        long between_days=(time2-time1)/(1000*3600*24);  

            

       return Integer.parseInt(String.valueOf(between_days));     

    }  

  

}

java距离天数的介绍就聊到这里吧,感谢你花时间阅读本站内容,更多关于java计算多少天、java距离天数的信息别忘了在本站进行查找喔。