如何使用UTC时间并添加30分钟,然后使用groovy返回输出?

如何使用UTC时间并添加30分钟,然后使用groovy返回输出?,groovy,Groovy,我是groovy新手,正在尝试解析UTC日期并添加30分钟。我希望输出为2018-01-22T12:41:00.000Z。但输出为2018-01-22T00:41:00.000Z。12小时制和24小时制正在发生一些事情。非常感谢你的帮助 import java.text.SimpleDateFormat import groovy.time.TimeCategory def TxnTm = '2018-01-22T12:11:00.000Z'; def inputString = TxnTm;

我是groovy新手,正在尝试解析UTC日期并添加30分钟。我希望输出为2018-01-22T12:41:00.000Z。但输出为2018-01-22T00:41:00.000Z。12小时制和24小时制正在发生一些事情。非常感谢你的帮助

import java.text.SimpleDateFormat
import groovy.time.TimeCategory

def TxnTm = '2018-01-22T12:11:00.000Z';
def inputString = TxnTm;
def formatString = "yyyy-MM-dd'T'hh:mm:ss.S'Z'";

def sdf = new SimpleDateFormat(formatString);
def date = sdf.parse(inputString) ;

println date;

use( TimeCategory ) {
    after30Mins = date + 30.minutes;
}

def today = new java.text.SimpleDateFormat("yyyy-MM-dd'T'HH:mm:ss.SSS'Z'");
return today.format(after30Mins)

从下面的语句改过来怎么样

def today = new java.text.SimpleDateFormat("yyyy-MM-dd'T'HH:mm:ss.SSS'Z'");
致:


您可以在网上快速试用

谢谢,这确实有效。小写的“hh”起了作用。你在Java8上吗?如果是这样的话,您可以去掉SimpleDataFormat吗?
def today = new java.text.SimpleDateFormat("yyyy-MM-dd'T'hh:mm:ss.SSS'Z')