时间戳模式
TimeStamp patten
Calendar firstTime =Calendar.getInstance();
java.sql.Timestamp t1=new Timestamp(firstTime.getTime().getTime());
它是这样给出当前时间的
`2015-01-06 17:19:20.763`
但我想要像下面这样的时间戳模式
'06-DEC-15 17:19:20.763000000 PM'
如果我想像这样打印时间戳模式,我该怎么办
有人可以帮我吗
您可以使用 SimpleDateFormat:
Calendar firstTime = Calendar.getInstance();
SimpleDateFormat df = new SimpleDateFormat();
df.applyPattern("dd-MMM-yy HH:mm:ss.SSS000000 aa");
System.out.println(df.format(firstTime.getTimeInMillis()).toUpperCase());
我输入了“0"s after SSS because the time you get is in miliseconds and it doesn't make any sense to have more than three "S”,但这是必需的。
toUpperCase 是另一个要求("Jan" 还不够)。
如果您强烈坚持特定的输出格式 (1:1),您应该另外使用 DateFormatSymbols
。
final DateFormatSymbols dfs = new DateFormatSymbols();
dfs.setShortMonths(new String[]{
"JAN", "FEB", "MAR", "APR", "MAY", "JUN",
"JUL", "AUG", "SEP", "OCT", "NOV", "DEC"});
final DateFormat df = new SimpleDateFormat("dd-MMM-yy HH:mm:ss.SSS000000 a", dfs);
System.out.println(df.format(new Timestamp(System.currentTimeMillis())));
请记住,DateFormat
不是线程安全的。
Calendar firstTime =Calendar.getInstance();
java.sql.Timestamp t1=new Timestamp(firstTime.getTime().getTime());
它是这样给出当前时间的
`2015-01-06 17:19:20.763`
但我想要像下面这样的时间戳模式
'06-DEC-15 17:19:20.763000000 PM'
如果我想像这样打印时间戳模式,我该怎么办
有人可以帮我吗
您可以使用 SimpleDateFormat:
Calendar firstTime = Calendar.getInstance();
SimpleDateFormat df = new SimpleDateFormat();
df.applyPattern("dd-MMM-yy HH:mm:ss.SSS000000 aa");
System.out.println(df.format(firstTime.getTimeInMillis()).toUpperCase());
我输入了“0"s after SSS because the time you get is in miliseconds and it doesn't make any sense to have more than three "S”,但这是必需的。
toUpperCase 是另一个要求("Jan" 还不够)。
如果您强烈坚持特定的输出格式 (1:1),您应该另外使用 DateFormatSymbols
。
final DateFormatSymbols dfs = new DateFormatSymbols();
dfs.setShortMonths(new String[]{
"JAN", "FEB", "MAR", "APR", "MAY", "JUN",
"JUL", "AUG", "SEP", "OCT", "NOV", "DEC"});
final DateFormat df = new SimpleDateFormat("dd-MMM-yy HH:mm:ss.SSS000000 a", dfs);
System.out.println(df.format(new Timestamp(System.currentTimeMillis())));
请记住,DateFormat
不是线程安全的。