【发布时间】:2014-02-22 10:16:46
【问题描述】:
我在Integer format中有一个date(YYYYMMDD)。和start_time 作为String (HH:mm 24 小时制)。和time_duration 在小时 作为double。
int date = 20140214;
String start_time = "14:30";
double duration = 50.30;
我想使用这 3 个值并创建 2 个 Java 日期对象。一个是start_date,一个是end_date。它们的格式应为YYYY-MM-DD HH:mm。
然后在我得到 2 个数据字符串后,例如 YYYY-MM-DD HH:mm。我怎样才能获得那些以前的变量。 date、start_time、duration。
这是我的尝试。
public void solve() throws IOException {
int date = 20140214;
String start_time = "14:30";
double duration = 24.50;
String startDate = "";
DateFormat df = new SimpleDateFormat("yyyy-MM-dd HH:mm");
startDate = getDate(date) + " " + start_time;
try {
Date start_Date = df.parse(startDate);
Date end_Date = new Date(start_Date.getTime()+(int)(duration*3600*1000));
System.out.println(df.format(start_Date));
System.out.println(df.format(end_Date));
} catch (ParseException ex) {
}
}
public String getDate(int dateInt) {
String date = "";
String dateIntString = String.valueOf(dateInt);
date = date + dateIntString.substring(0, 4) + "-";
date = date + dateIntString.substring(4, 6) + "-";
date = date + dateIntString.substring(6, 8);
return date;
}
有什么简单的方法吗。 ?或者一些我可以使用的内置功能,而不是我用过的?
【问题讨论】:
-
请向我们展示一个尝试,以便我们为您提供帮助。
标签: java string-conversion java.util.date