Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/343.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 自定义日期和时间字符串(毫秒)_Java_Datetime_Datetime Format_Simpledateformat_Milliseconds - Fatal编程技术网

Java 自定义日期和时间字符串(毫秒)

Java 自定义日期和时间字符串(毫秒),java,datetime,datetime-format,simpledateformat,milliseconds,Java,Datetime,Datetime Format,Simpledateformat,Milliseconds,我有以毫秒为单位的时间,例如:1308700800000;我需要在下午2:15将其转换为类似于2011年6月9日的 我试着用 SimpleDateFormat format = new SimpleDateFormat("MMM D'\''YY"); 但我有一个例外: Caused by: java.lang.IllegalArgumentException: Unterminated quote 非常感谢您的帮助。从异常消息中可以清楚地看出,问题将在于格式字符串,特别是单引号部分 我们可以

我有以毫秒为单位的时间,例如:1308700800000;我需要在下午2:15将其转换为类似于2011年6月9日的

我试着用

SimpleDateFormat format = new SimpleDateFormat("MMM D'\''YY");
但我有一个例外:

Caused by: java.lang.IllegalArgumentException: Unterminated quote

非常感谢您的帮助。

从异常消息中可以清楚地看出,问题将在于格式字符串,特别是单引号部分

我们可以看到:

可以使用单引号(')引用文本以避免解释。“''”表示一个单引号

因此,我相信您的格式(对于日期部分,根据您现有的示例)可以像

new SimpleDateFormat("MMM d''yy")
应该不需要使用反斜杠。

试试:

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

安德烈是对的,但是D和Y的帽子对你不起作用。看医生,但是 这应该是可行的:

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

请添加一些代码和完整的异常跟踪将使您在java
java.lang.IllegalArgumentException:Invalized pattern character“Y”
中处理日期和时间时的生活变得更加轻松。对不起,我一直在关注撇号的语法问题,因此通过对比将它们插入到现有格式中。为了使这成为一个可复制和粘贴的答案,我更新了日期和年份参数的大小写。根据Grooveek的建议,大写D和Y不起作用,这实现了SimpleDateFormat=new SimpleDateFormat(“MMM D”“yy”“at'hh:mm aaa”);SimpleDateFormat=新的SimpleDateFormat(“MMM d”“yy”“at'hh:mm aaa”);我成功了。。