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下午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,可
有什么想法吗?如果要附加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几个小时?