日期:2014-05-19  浏览次数:20771 次

求获得时间的方法
现在的需求如下 
获取当天的时间,格式为 年月日 如 2012-07-26

然后根据三班倒的时间格式, 在这个时间的基础上 加上 时 分 秒 ,最后形成的 2012-07-26 08:00:00

2012-07-26 16:00:00, 2012-7-26 23:59:59
  
 这三个时间点 , 这个内容是Date类型的

------解决方案--------------------
用SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
------解决方案--------------------
import java.util.Date;
import java.text.SimpleDateFormat;
 
public class NowString {
public static void main(String[] args) { 
SimpleDateFormat df = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");//设置日期格式
System.out.println(df.format(new Date()));// new Date()为获取当前系统时间
}
}

------解决方案--------------------
StringBuffer sb = new StringBuffer ();
sb.append("2012-07-26 ").append("08:00:00");
Date.valueOf(sb.toString());
没测试过试下行不,Date的valueOf静态方法可以把字符串变成日期
------解决方案--------------------
探讨

你们说的太简单

08:00:00

这里是要添加到 日期后面

------解决方案--------------------
SimpleDateForma 你可以查一下这个方法的使用。什么样时间格式都可以给你的吧。
------解决方案--------------------
public static void main(String[] args) {
Date data = new Date();
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
System.out.println(sdf.format(data));

}
------解决方案--------------------
public static void main(String[] args) {
Date data = new Date();
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
System.out.println(sdf.format(data));

}
------解决方案--------------------
String a = "2012-01-01";
String b = "08:00:00";
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
Date date = null;
try {
date = sdf.parse(a + " " + b);
} catch (ParseException e) {
e.printStackTrace();
}
------解决方案--------------------
Java code

String a="2012-07-26" ;
String b="08:00:00";
//你a和b拼的时候,中间要加空格的
String c = a + " "+b;
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
Date date = sdf.parse(c);
//这样得到的date就是Date类型的2012-07-26 08:00:00
System.out.println(date);
//控制台输出  Thu Jul 26 08:00:00 CST 2012
System.out.println(sdf.format(date));
//控制台输出  2012-07-26 08:00:00

------解决方案--------------------
1:new Date()拿到当天时间,用SimpleDateFormat("yyyy-MM-dd")的format方法格式化一下得一个2012-07-26字符串;
2:把你需要的三个班次时间都向字符串追加再用SimpleDateFormat(yyyy-MM-dd HH:mm:ss)类的parse()方法格式化一下得3个Date类型时间
------解决方案--------------------
增加时间 使用Calendar

Java code
Calendar cal = Calendar.getInstance();
cal.add(Calendar.HOUR_OF_DAY, 8);  //加8小时  后面的数字可以正 可以为负、正负意思你应该懂
//想加什么日期自己加什么日期、自己看下Calendar的API
Date newDay = cal.getTime();