如何检查传递日期作为输入是否在UTC时区?

时间:2013-07-10 00:48:56

标签: java

如何限制客户端仅传递UTC时区日期?我希望客户端只能以这种格式传递日期:yyyyMMddTHH:mm:ss.SSSZ例如20130710T00:41:19.004 + 0000。

如果客户通过日期偏移,如20130710T00:41:19.004 + 0500,我不应接受此日期。

这是我们的要求: 客户端将调用我们的webservice方法,客户端将始终将日期转换为UTC时区,即20130710T00:41:19.004 + 0000并传递给我们的webservice方法。但无论如何,如果任何案件客户已经过了20130710T00:41:19.004 + 0500这样的日期,我们应该有我们的逻辑,我们不应该处理请求。

我尝试了SimpleDateFormat(yyyyMMddTHH:mm:ss.SSSZ)并尝试解析Date(20130710T00:41:19.004 + 0500),它没有抛出任何异常。我期待它不应该解析日期。

检查输入日期是否有上述格式(仅限UTC)?

1 个答案:

答案 0 :(得分:1)

如果您希望输入字符串使用此格式(yyyyMMddTHH:mm:ss.SSSZ),假设SimpleDateFormat格式化且仅允许UTC时区中的输入,只需检查字符串是否以00结尾,在将它传递给解析器之前,+0000-0000