如何格式化java.sql时间戳来显示?
如何合成一个java.sql时间戳我喜欢? (对于string,用于显示目的)
java.sql.Timestamp
扩展java.util.Date
。 你想要的东西是:
String S = new SimpleDateFormat("MM/dd/yyyy").format(myTimestamp);
包括时间:
String S = new SimpleDateFormat("MM/dd/yyyy HH:mm:ss").format(myTimestamp);
使用String.format(或java.util.Formatter ):
Timestamp timestamp = ... String.format("%1$TD %1$TT", timestamp)
编辑:
请参阅Formatter的文档以了解TD和TT的含义:点击java.util.Formatter
第一个“T”代表:
't', 'T' date/time Prefix for date and time conversion characters.
和'T'后面的字符:
'T' Time formatted for the 24-hour clock as "%tH:%tM:%tS". 'D' Date formatted as "%tm/%td/%ty".
对于这个特定的问题, java.text.SimpleDateFormat
的标准build议工作,但有不幸的副作用, SimpleDateFormat
不是线程安全的 ,可以是特别讨厌的问题的来源,因为它会破坏你的输出在multithreading场景,你不会得到任何例外!
我强烈build议看看乔达这样的事情。 为什么? 这是一个比当前库更加丰富和更直观的Java时间/date库(以及即将推出的新的标准Javadate/时间库的基础,因此您将学习即将成为标准API)。
如果您使用MySQL并希望数据库本身执行转换,请使用以下命令:
DATE_FORMAT(date,格式)
如果您更喜欢使用Java格式化,请使用以下命令:
java.text.SimpleDateFormat中
SimpleDateFormat dateFormat = new SimpleDateFormat("M/dd/yyyy"); dateFormat.format( new Date() );
使用DateFormat
。 在国际化的应用程序中,使用getInstance
提供的格式。 如果你想明确地控制格式,你自己创build一个新的SimpleDateFormat
。
String timeFrSSHStr = timeFrSSH.toString();