「java距离天数」java计算多少天
本篇文章给大家谈谈java距离天数,以及java计算多少天对应的知识点,希望对各位有所帮助,不要忘了收藏本站喔。
本文目录一览:
- 1、Java输入任何年月日,计算距离今天有多少天
- 2、java计算今天距离某天还有多少天?
- 3、java中计算两个日期之间差的天数
- 4、java程序 计算今天距离过去某一天的天数
- 5、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距离天数的信息别忘了在本站进行查找喔。