首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >TimeStamp模式

TimeStamp模式
EN

Stack Overflow用户
提问于 2015-01-06 11:51:25
回答 2查看 421关注 0票数 0
代码语言:javascript
复制
Calendar firstTime =Calendar.getInstance();

java.sql.Timestamp t1=new Timestamp(firstTime.getTime().getTime());

它给了我们现在这样的时间

代码语言:javascript
复制
`2015-01-06 17:19:20.763`  

但是我想要下面这样的时间戳模式

代码语言:javascript
复制
'06-DEC-15 17:19:20.763000000 PM'

如果我想打印像这样的时间戳图案,我该怎么办?

有人能帮帮我吗?

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2015-01-06 11:57:35

您可以使用SimpleDateFormat:

代码语言:javascript
复制
        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”放在SSS后面,因为你得到的时间是毫秒,超过三个“S”是没有任何意义的,但这是必需的。

toUpperCase是另一个要求(“Jan”不够)。

票数 3
EN

Stack Overflow用户

发布于 2015-01-06 12:07:22

如果您强烈坚持特定的输出格式(1:1),则应该另外使用DateFormatSymbols

代码语言:javascript
复制
    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而不是线程安全的。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/27798081

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档