自定义日期和时间字符串(以毫秒为单位)



我的时间以毫秒为单位,例如1308700800000;我需要将其转换为类似Jun 9'11 at 02:15 PM的内容。

我试过使用

SimpleDateFormat format = new SimpleDateFormat("MMM D'''YY");

但我有一个例外:

Caused by: java.lang.IllegalArgumentException: Unterminated quote

如有任何帮助,我们将不胜感激。

从异常消息中可以清楚地看出,问题在于您的格式字符串,尤其是单引号部分。

查看文档,我们可以看到:

可以使用单引号(')引用文本以避免解释。"''"表示单引号。

因此,我相信你的格式(对于日期部分,根据你现有的例子)可以像一样简单

new SimpleDateFormat("MMM d''yy")

应该不需要使用反斜杠。

try:

import java.util.*;
import java.text.*;
class D {
    public static void main( String ... args )  {
        System.out.println( 
            new SimpleDateFormat("MMM dd''yy")
            .format( new Date( 1308700800000L  ))
        );
    }
}

打印:

Jun 21'11

Andrzej是对的,但大写字母D和Y不适合你。阅读文档,但是应该有效:

SimpleDateFormat format = new SimpleDateFormat("MMM d''yy 'at' HH:mm:ss z")

相关内容

  • 没有找到相关文章

最新更新