我想做到这一点:拆分日期和时间从日期输入单独
Date meetingDateAndTime;
<h:inputText value="Date"/>
<h:inputText value="Time"/>
一旦我只有一个属性日期,是否有可能在inputText的键入日期,并键入时间到另一个然后将它们合并在一起?
我想做到这一点:拆分日期和时间从日期输入单独
Date meetingDateAndTime;
<h:inputText value="Date"/>
<h:inputText value="Time"/>
一旦我只有一个属性日期,是否有可能在inputText的键入日期,并键入时间到另一个然后将它们合并在一起?
您可以使用两个DateFormats
,一个输出,其输出时间日期和一个。 SimpleDateFormat
DateFormat dateFormat = new SimpleDateFormat("dd-MM-yyyy");
DateFormat dateFormat = new SimpleDateFormat("hh:mm:ss");
编辑:对不起,我以为你想写从一个日期两个字段不是由两场创建一个日期。有关以下内容:
DateFormat dateFormat = new SimpleDateFormt("dd-MM-yyyy hh:mm:ss);
String dateString = dateInputText + " " + timeInputText;
Date date = dateFormat.parse(dateString);
试试这个:
<h:inputText value="dateobject">
<f:convertDateTime pattern="dd-MM-yyyy" />
</h:inputText>
<h:inputText value="dateobject">
<f:convertDateTime pattern="hh:MM:ss" />
</h:inputText>
卫生署,我误解了这个问题:O)
请说明这个答案是否令你满意。说你误解了这个问题会混淆你的回答。您可以删除该评论或编辑/删除您的答案。 – climmunk
我希望你知道,大多数的方法(和构造函数) java.util.Date类被弃用,因此,我建议你使用java.util.GregorianCalendar中代替。
试试这个:
<h:inputText value="#{myBean.meetingDate}">
<f:convertDateTime pattern="yyyy-MM-dd" />
</h:inputText>
<h:inputText value="#{myBean.meetingTime}">
<f:convertDateTime pattern="hh:mm:ss" />
</h:inputText>
这里的支持bean:
import java.util.Date;
import java.util.Calendar;
import java.util.GregorianCalendar;
public class MyBean {
private GregorianCalendar fullMeetingDateTimeInfo = new GregorianCalendar();
private Date meetingDate;
private Date meetingTime;
public Date getMeetingDate() { return meetingDate; }
public Date getMeetingTime() { return meetingTime; }
public Date setMeetingDate(Date meetingDate) {
this.meetingDate = meetingDate;
fullMeetingDateTimeInfo.set(Calendar.YEAR, Integer.parseInt(new SimpleDateFormat("yyyy").format(meetingDate)));
fullMeetingDateTimeInfo.set(Calendar.MONTH, Integer.parseInt(new SimpleDateFormat("MM").format(meetingDate)));
fullMeetingDateTimeInfo.set(Calendar.DATE, Integer.parseInt(new SimpleDateFormat("dd").format(meetingDate)));
}
public Date setMeetingTime(Date meetingTime) {
this.meetingTime = meetingTime;
fullMeetingDateTimeInfo.set(Calendar.HOUR_OF_DAY, Integer.parseInt(new SimpleDateFormat("H").format(meetingTime)));
fullMeetingDateTimeInfo.set(Calendar.MINUTE, Integer.parseInt(new SimpleDateFormat("mm").format(meetingTime)));
fullMeetingDateTimeInfo.set(Calendar.SECOND, Integer.parseInt(new SimpleDateFormat("ss").format(meetingTime)));
}
public GregorianCalendar getFullMeetingDateTimeInfo() {
return fullMeetingDateTimeInfo;
}
}
正如你所看到的,我合并在一个Date对象与来自其他时间信息的最新信息日期对象。合并后的数据存储在fullMeetingDateTimeInfo财产。 因此,在进一步您与fullMeetingDateTimeInfo属性来工作,如果你想拥有完整的会议时间信息在一个对象合并。
祝你好运!
Konstantin
如何在收集它们后合并它们? – pringlesinn
参见编辑用于更新 –
您只需要两个字符串,一个保存日期,另一个为了节省时间,然后使用这些属性2做你的答案的第二部分,它工作正常!谢谢!!! – pringlesinn