public static void main(String[] args){
String inuput_dt="";
SimpleDateFormat sdf = new SimpleDateFormat(fmt);
Date dt= sdfparse(str);//转换成功的Date对象
Long time = dtgetTime();//这就是距离1970年1月1日0点0分0秒的毫秒数
Long time2 = SystemcurrentTimeMillis();//与上面的相同,获取系统当前时间毫秒数
Systemoutprintln(time-time2);//输出输入时间与当前时间的时间差,结果是毫秒数
int year=0;
int moth=0;
int day=0;
Calendar c=CalendargetInstance();//获得系统当前日期
year=cget(CalendarYEAR);
month=cget(CalendarMONTH)+1;//系统日期从0开始算起
day=cget(CalendarDAY_OF_MONTH);
Systemoutprintln("当前系统时间:"+year+"年"+month+"月"+day+"日");//
}
orgapachecommonsnetftpFTPClient;
java 获取ftp文件的最后修改时间比实际时间少了8小时代码如下:FTPFile[] files = ftpClientlistFiles();
for (FTPFile file : files){
Systemoutprintln(filegetName());
Date date = filegetTimestamp()getTime();
Systemoutprintln(文件修改 + dateFormatformat(date));
Date date1 = new Date();
Systemoutprintln(now + dateFormatformat(date1));
long f = date1getTime() -dategetTime();
Systemoutprintln(时间差 + f/60000+分);}------解决方案--------------------------------------------------------
FTPFilegetTimestamp()getTime()
javaioFilelastModified()
我的思路:在java里面任何完整的日期都可以转化成毫秒,
然后利用毫秒之差就可以算出这2个日期的差额,
但题目里面没有天,只有时分秒,
所以我们可以分别在时分秒加上年月日,使之组成一个完整的日期就可以进行计算了。
以下是我的代码,可以直接拷贝在Eclipse里运行。
ps:你的代码我看了,没有什么问题,可能是在网站里面运行,你不应该有main函数之类的东西吧,应该用servlet啊。
package comtesttimeinterval;import javaioBufferedReader;
import javaioInputStreamReader;
import javatextSimpleDateFormat;
import javautilDate;
public class TestTimeInterval {
public static void main(String[] args) {
try {
// 得到系统输入的内容
Systemoutprintln("请输入入睡时刻,用:隔开:");
InputStreamReader isr_begin = new InputStreamReader(Systemin);
BufferedReader br_begin = new BufferedReader(isr_begin);
String beginInputValue = br_beginreadLine();
Systemoutprintln("入睡时间为:" + beginInputValue);
Systemoutprintln("请输入起床时刻,用:隔开:");
InputStreamReader isr_end = new InputStreamReader(Systemin);
BufferedReader br_end = new BufferedReader(isr_end);
String wakeupInputValue = br_endreadLine();
Systemoutprintln("起床时间为:" + wakeupInputValue);
// 1将入睡时间拼接成一个完整的日期
String sleepTimeStr = getCurrDay() + " " + beginInputValue;
// 11转换成日期格式
Date sleepTime = convertStrToDate(sleepTimeStr);
// 2将起床时间拼接成一个完整的日期
String wakeupTimeStr = getCurrDay() + " " + wakeupInputValue;
// 21转换成日期格式
Date wakeupTime = convertStrToDate(wakeupTimeStr);
// 计算2个日期之差
long interval = wakeupTimegetTime() - sleepTimegetTime();
Systemoutprintln("相差的毫秒是:" + interval);
// 3将long转化成时分秒
// 31先得到时
int hour = new Long(interval / (1000 60 60))intValue();
// 32再得到分
int tempLeft_minute = new Long(interval % (1000 60 60))
intValue();
// 321 得到分
int minute = new Long(tempLeft_minute / (1000 60))intValue();
// 41 得到秒
int tempLeft_second = new Long(tempLeft_minute % (1000 60))
intValue();
// 421 得到分
int second = new Long(tempLeft_second / 1000)intValue();
Systemoutprintln("睡觉的时间为" + hour + "时," + minute + "分," + second
+ "秒");
} catch (Exception e) {
eprintStackTrace();
}
}
private static String getCurrDay() throws Exception {
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
return sdfformat(new Date());
}
private static Date convertStrToDate(String dateStr) throws Exception {
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
return sdfparse(dateStr);
}
}
以上就是关于java 输入一个时间然后计算与当前时间的差, 并且输出当前时间!全部的内容,包括:java 输入一个时间然后计算与当前时间的差, 并且输出当前时间!、java 获取ftp文件的最后修改时间比实际时间少8小时,该怎么处理、JAVA新手,计算两个时间差等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)