在java中将时间从hh:mm:ss转换为hh:mm
我想将时间从hh:mm:ss转换为hh:mm 它以hh:mm:ss的形式来自数据库(mysql)。 我尝试了以下代码,但没有得到我想要的在java中将时间从hh:mm:ss转换为hh:mm,java,date,formatting,Java,Date,Formatting,我想将时间从hh:mm:ss转换为hh:mm 它以hh:mm:ss的形式来自数据库(mysql)。 我尝试了以下代码,但没有得到我想要的 try { s= HibernateUtil.currentSession(); tx=s.beginTransaction(); Query query = s.createQuery("select from Dailytimesheet dailytimesheet where dailytimeshe
try {
s= HibernateUtil.currentSession();
tx=s.beginTransaction();
Query query = s.createQuery("select from Dailytimesheet dailytimesheet where dailytimesheet.IdDailyTimeSheet=6083 " );
for(Iterator it=query.iterate();it.hasNext();)
{
if(it.hasNext())
{
Dailytimesheet object=(Dailytimesheet)it.next();
String dt=object.getTimeFrom().toString();
SimpleDateFormat sdf = new SimpleDateFormat("HH:mm");
long ms=0;
try {
ms = sdf.parse(dt).getTime();
}
catch (ParseException e) {e.printStackTrace();}
Time ts = new Time(ms);
out.println("<h2>"+ts+"</h2>");
试试看{
s=HibernateUtil.currentSession();
tx=s.beginTransaction();
Query Query=s.createQuery(“从Dailytimesheet Dailytimesheet中选择Dailytimesheet,其中Dailytimesheet.IdDailyTimeSheet=6083”);
for(Iterator it=query.iterate();it.hasNext();)
{
if(it.hasNext())
{
Dailytimesheet对象=(Dailytimesheet)it.next();
字符串dt=object.getTimeFrom().toString();
SimpleDataFormat sdf=新的SimpleDataFormat(“HH:mm”);
长ms=0;
试一试{
ms=sdf.parse(dt.getTime();
}
catch(异常解析e){e.printStackTrace();}
时间ts=新时间(ms);
out.println(“+ts+”);
感谢您的帮助。也许您可以在Dailytimesheet中添加一个名为GetTimeWithOutSecondFrom()的新方法,该方法复制日期对象,然后在返回日期之前将副本的秒数设置为零 作为一个额外的好处,您可以完全避免SimpleDataFormat sdf位,这样代码将更易于阅读 代码可能如下所示:
public Date getTimeWithoutSecondsFrom()
{
Date result = this.getTimeFrom();
result.setSeconds(0);
return(result);
}
Calendar c = new Calendar();
Calendar.setDate(new Date(object.getTimeFrom().toString()));
String date = Calendar.HOUR + ":" + Calendar.MINUTE
也许您可以在Dailytimesheet中添加一个名为GetTimeWithOutSecondFrom()的新方法,该方法复制date对象,然后在返回日期之前将副本的秒数设置为零 作为一个额外的好处,您可以完全避免SimpleDataFormat sdf位,这样代码将更易于阅读 代码可能如下所示:
public Date getTimeWithoutSecondsFrom()
{
Date result = this.getTimeFrom();
result.setSeconds(0);
return(result);
}
Calendar c = new Calendar();
Calendar.setDate(new Date(object.getTimeFrom().toString()));
String date = Calendar.HOUR + ":" + Calendar.MINUTE
试试java.util.Calendar类怎么样? 你可以这样做:
public Date getTimeWithoutSecondsFrom()
{
Date result = this.getTimeFrom();
result.setSeconds(0);
return(result);
}
Calendar c = new Calendar();
Calendar.setDate(new Date(object.getTimeFrom().toString()));
String date = Calendar.HOUR + ":" + Calendar.MINUTE
或者我不明白你的问题?试试java.util.Calendar类怎么样? 你可以这样做:
public Date getTimeWithoutSecondsFrom()
{
Date result = this.getTimeFrom();
result.setSeconds(0);
return(result);
}
Calendar c = new Calendar();
Calendar.setDate(new Date(object.getTimeFrom().toString()));
String date = Calendar.HOUR + ":" + Calendar.MINUTE
或者我不明白你的问题?你应该使用
DateFormat
的格式化方法。类似于:
out.println("<h2>"+sdf.format(ts)+"</h2>");
out.println(“+sdf.format(ts)+”);
您应该使用DateFormat
的格式化方法。类似于:
out.println("<h2>"+sdf.format(ts)+"</h2>");
out.println(“+sdf.format(ts)+”);
将HH:MM:SS转换为HH:MM最好通过hhmmss完成。子字符串(0,5)
;-)或者,您可能更喜欢在SELECT
语句中正确格式化数据。将HH:MM:SS转换为HH:MM最好通过hhmmss.substring(0,5)完成
;-)或者,您可能更喜欢在SELECT
语句中格式化数据。您需要将java.util.Date
对象转换为java.lang.String
对象,该对象以所需格式表示人类可读的时间。您不能再次将其转换回Date
(或其任何子类,如java.sql.Time
等)而不丢失格式。格式即不存储在Date
中。Date
只知道自历元以来的毫秒数
SimpleDateFormat sdf = new SimpleDateFormat("HH:mm");
java.util.Date date = object.getTimeFrom();
String string = sdf.format(date);
System.out.println(string);
您需要使用将
java.util.Date
对象转换为表示所需格式的人类可读时间的java.lang.String
对象。无法再次将其转换回Date
(或其任何子类,如java.sql.time
等)不丢失格式。格式即不存储在日期
中。日期
只知道自历元以来的毫秒数
SimpleDateFormat sdf = new SimpleDateFormat("HH:mm");
java.util.Date date = object.getTimeFrom();
String string = sdf.format(date);
System.out.println(string);
在这种情况下,我只需要在SQL中进行转换。这是MySql的日期转换。在您的情况下,应该是这样的- 块报价日期格式('2007-10-04 22:23:00','%H:%i')
看起来您需要对从查询中获得的每一行进行转换,如果您要检索许多记录,那么由数据库引擎进行转换可能更经济划算。在这种情况下,我只需要在SQL中进行转换。这是MySql的日期转换。在您的情况下,应该是这样的- 块报价日期格式('2007-10-04 22:23:00','%H:%i')
看起来您需要对从查询中获得的每一行进行转换,如果您要检索多个记录,则由数据库引擎进行转换可能更经济划算。您得到了什么答案?您应该收到什么答案?此代码段中缺少很多括号-请正确格式化。Wh在回答时你们得到了什么?你们应该得到什么答案?你们在这段代码中缺少了很多括号-请正确格式化它。