我使用以下代码来获取日期和时间
public class offer extends HttpServlet {
@Override
protected void doGet(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
response.setContentType("text/html;charset=UTF-8");
PrintWriter out = response.getWriter();
try {
out.println("<html>");
out.println("<head>");
out.println("<title>Servlet offer</title>");
out.println("</head>");
out.println("<body>");
out.println("<h1> sv sugar mills</h1>");
doPost(request,response);
out.println("</body>");
out.println("</html>");
} finally {
out.close();
}
}
@Override
protected void doPost(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
response.setContentType("text/html;charset=UTF-8");
PrintWriter out = response.getWriter();
java.sql.Date sqlDate=null,ofrmonth=null,ctime=null;
dat="14/02/2013";
try
{
java.util.Date date=new SimpleDateFormat("dd/MM/yyyy").parse(dat);
//ctime=new java.sql.Date(date.getTime());
sqlDate = new java.sql.Date(date.getTime());
out.println(sqlDate);
out.Println(ctime);
}
catch(Exception e)
{
out.println(e);
}
}
@Override
public String getServletInfo() {
return "Short description";
}// </editor-fold>
}
在这里,util。日期变量日期显示为"2013年2月14日星期四00:00:00 IST"。所以我得到了sql。日期很容易定为"2013-02-14"。此外,我想从中获取时间。在ctime变量中,我想获取时间并显示它。格式应该是24小时格式。但我不知道怎么拿到。
我使用了一些函数,比如getHours()和getDate(),但我找不到解决方案。有人能帮我争取时间吗。提前感谢
我需要时间为00:00:00(hh:mm:ss)
试试这个:
Calendar c = Calendar.getInstance();
c.setTime(sqlDate);
System.out.println(c.get(Calendar.HOUR));
System.out.println(c.get(Calendar.MINUTE));
System.out.println(c.get(Calendar.SECOND));
除非您为Calendar
对象设置了时区,否则上面会返回机器时区中的时间。
如果你想要一个HH:mm:ss
形式的String
作为输出,你可以使用@zvzdhk指出的SimpleDateFormat
。
代码段:
SimpleDateFormat sdf = new SimpleDateFormat("HH:mm:ss");
sdf.setTimeZone(TimeZone.getTimeZone("IST"));
System.out.println(sdf.format(sqlDate));
注意,TimeZone.getTimeZone
允许"GMT+5:30"
、"PST"
等参数。阅读文档了解更多信息。