Computer >> บทช่วยสอนคอมพิวเตอร์ >  >> การเขียนโปรแกรม >> การเขียนโปรแกรม

วิธีพิมพ์วันที่และเวลาในรูปแบบเฉพาะด้วย JSP

ใช้ SimpleDateFormat สำหรับจัดรูปแบบวันที่/เวลา ตาม locale และ pattern ที่กำหนด

ตัวอย่าง: แสดงวันที่เวลารูปแบบกำหนดเอง

<%@ page import="java.io.*,java.util.*,javax.servlet.*,java.text.*" %>
<html>
<head><title>แสดงวันที่และเวลา</title></head>
<body>
    <center><h1>แสดงวันที่และเวลา</h1></center>
    <%
        Date dNow = new Date();
        SimpleDateFormat ft = new SimpleDateFormat("E yyyy.MM.dd 'at' hh:mm:ss a zzz");
        out.print("<h2 align=\"center\">" + ft.format(dNow) + "</h2>");
    %>
</body>
</html>

ผลลัพธ์

Display Current Date & Time
Mon 2010.06.21 at 10:06:44 PM GMT+04:00

Pattern ตัวอักษรสำคัญ

ตัวอักษรความหมายตัวอย่าง
yปี2024
Mเดือน06, Jun, June
dวันของเดือน21
Eวันของสัปดาห์Mon, Monday
hชั่วโมง (1-12)10
Hชั่วโมง (0-23)22
mนาที06
sวินาที44
aAM/PMPM
zTime zoneGMT+07:00
'text'ข้อความคงที่at

แนวทางปฏิบัติสมัยใหม่ (Java 8+)

ควรใช้ java.time package (LocalDateTime, DateTimeFormatter) แทน Date และ SimpleDateFormat เพราะ thread-safe และ API ดีกว่า

DateTimeFormatter fmt = DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss");
out.print(LocalDateTime.now().format(fmt));