Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/date/2.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
Date 使用Groovy-根据时间向返回的日期添加文本_Date_Groovy - Fatal编程技术网

Date 使用Groovy-根据时间向返回的日期添加文本

Date 使用Groovy-根据时间向返回的日期添加文本,date,groovy,Date,Groovy,我正在运行以下groovy脚本: def sdf=new java.text.simpleDataFormat(“yyyy-MM-dd-kk:MM:ss”) 返回sdf.format(新日期()) 它返回=2016-03-23 16:54:39 这很好,但是在返回值的末尾,我想添加一个空格,根据时间(上午或下午时间)选择上午或下午,如下所示: 上午时间返回=2016-03-23 11:54:39上午 下午时间返回=2016-03-23 16:54:39下午 有什么想法吗?如果要附加AM/PM,可

我正在运行以下groovy脚本:

def sdf=new java.text.simpleDataFormat(“yyyy-MM-dd-kk:MM:ss”)

返回sdf.format(新日期())

它返回=2016-03-23 16:54:39

这很好,但是在返回值的末尾,我想添加一个空格,根据时间(上午或下午时间)选择上午或下午,如下所示:

上午时间返回=2016-03-23 11:54:39上午 下午时间返回=2016-03-23 16:54:39下午


有什么想法吗?

如果要附加AM/PM,可以在日期格式化程序模式的末尾附加一个“a”(AM/PM标记):

new java.text.SimpleDateFormat("yyyy-MM-dd kk:mm:ss a").format(new Date())
这将产生:

2016-03-23 18:05:20 PM

有关
SimpleDateFormat

的详细信息,请参阅。如果要附加AM/PM,可以在日期格式化程序模式的末尾附加“a”(AM/PM标记):

new java.text.SimpleDateFormat("yyyy-MM-dd kk:mm:ss a").format(new Date())
这将产生:

2016-03-23 18:05:20 PM

有关
SimpleDateFormat

的详细信息,请参见,使用groovy更容易,因为Date有一个格式方法

println new Date().format('yyyy-MM-dd HH:mm:ss a')

使用groovy更容易,因为Date有一个格式化方法

println new Date().format('yyyy-MM-dd HH:mm:ss a')
java.time
Date
SimpleTextFormat
类现在已经被内置在Java8和更高版本中的框架所淘汰

a是时间线上的一个时刻,具有最高的分辨率

这个答案中的代码是Java,因为我不知道Groovy语法

Instant instant = Instant.now();
应用时区以获取时间

定义格式化模式。中的这些代码类似于
SimpleDataFormat
,但并不完全相同。学习课堂文档

DateTimeFormatter formatter = DateTimeFormatter.ofPattern ( "yyyy-MM-dd kk:mm:ss" );
请注意,在该特定模式中使用的
kk
表示一天中使用1-24小时,而不是0-23小时(
hh

生成一个字符串作为日期时间对象的文本表示形式

String output = zdt.format( formatter );
java.time
Date
SimpleTextFormat
类现在已经被内置在Java8和更高版本中的框架所淘汰

a是时间线上的一个时刻,具有最高的分辨率

这个答案中的代码是Java,因为我不知道Groovy语法

Instant instant = Instant.now();
应用时区以获取时间

定义格式化模式。中的这些代码类似于
SimpleDataFormat
,但并不完全相同。学习课堂文档

DateTimeFormatter formatter = DateTimeFormatter.ofPattern ( "yyyy-MM-dd kk:mm:ss" );
请注意,在该特定模式中使用的
kk
表示一天中使用1-24小时,而不是0-23小时(
hh

生成一个字符串作为日期时间对象的文本表示形式

String output = zdt.format( formatter );

你为什么用kk几个小时?为什么用kk几个小时?