2020-12-21T13:00:00.000+0000 的 SimpleDateFormat 掩码

SimpleDateFormat mask for 2020-12-21T13:00:00.000+0000

date/time 值以正确的 UTC 格式存储在我们的服务器中。但是当服务器查询日期时,它会将其转换为服务器本地时区,这不一定是发起查询的设备的时区。我正在尝试根据输入参数简单地将时间调整为 return 到 UTC,以便它可以 returned 到 UTC 中的应用程序。但是当我尝试解析日期以便调整时间时,我 运行 变成了掩码错误。

我很难获得此格式的正确掩码:2020-12-21T13:00:00.000+0000

输入值:2021-01-28T12:30:00.000+0000

尝试掩码:yyyy-MM-dd'T'HH:mm:ss

错误:没有方法签名:java.text.SimpleDateFormat.parse() 是 适用于参数类型:(java.util.Date) 值:{Thu Jan 28 12:30:00 UTC 2021}(在 groovy 脚本中); Caused by: No signature of method: java.text.SimpleDateFormat.parse() 适用于参数类型: (java.util.Date) 值:{1 月 28 日星期四 12:30:00 UTC 2021}

代码:

import java.util.GregorianCalendar; 
import java.util.Calendar; 
import java.util.Date; 
import java.text.SimpleDateFormat;

SimpleDateFormat inDate = new SimpleDateFormat("yyyy-MM-dd'T'HH:mm:ss", Locale.ENGLISH);
SimpleDateFormat outDate = new SimpleDateFormat("yyyy-MM-dd'T'HH:mm:ss", Locale.ENGLISH);
int minutesToAdd = (Hours * 60) + Minutes ;  
Calendar C = Calendar.getInstance();
java.util.Date D = inDate.parse(InputDate);
if (D!='')
     {
      C.setTime(D);
      C.add(Calendar.MINUTE, minutesToAdd);
      OutputDate=outDate.format(C.getTime());
     }
else
     {
      OutputDate = ''
     }

如有任何建议,我们将不胜感激。

正如 cfrick 所怀疑的那样,从 Boomi 传递到 Groovy 脚本的值属于 java.util.Date 类型,因此不需要解析。

TY