将yyyyMM格式的字符串转换为groovy中的日期
我有一个将yyyyMM格式的字符串转换为groovy中的日期,groovy,Groovy,我有一个字符串,格式为yyyyym,我需要将其转换为MM/yyyyy格式的日期 示例:字符串为201710,需要转换为格式为10/2017的日期 有人能告诉我怎么做吗 谢谢没有特定格式的java.util.Date对象。日期格式,如yyyyym或MM/yyyyy只是将其表示为字符串的一种方式。如果您的输入是一个格式化为201710的字符串,并且您想将其格式化为10/2017,那么您必须从您的输入字符串(Date.parse()method)中创建一个java.util.Date对象,并对所创建的
字符串
,格式为yyyyym
,我需要将其转换为MM/yyyyy
格式的日期
示例:字符串为201710
,需要转换为格式为10/2017
的日期
有人能告诉我怎么做吗
谢谢没有特定格式的
java.util.Date
对象。日期格式,如yyyyym
或MM/yyyyy
只是将其表示为字符串的一种方式。如果您的输入是一个格式化为201710
的字符串,并且您想将其格式化为10/2017
,那么您必须从您的输入字符串(Date.parse()
method)中创建一个java.util.Date
对象,并对所创建的对象调用.format('MM/yyyy')
方法,例如
def formatted = Date.parse("yyyyMM", "201710").format("MM/yyyy")
我使用acalendar.setTime(格式化)将当前日期设置为格式化值(2017年10月),然后尝试使用int month=acalendar.get(Calendar.month)获取月份。这将返回一个错误“无法将类为“java.lang.String”的对象“10/2017”强制转换为类为“java.util.Date”。有没有办法将“格式化”转换为日期?下面的部分创建java.util.Date
对象-Date.parse(“yyyyMM”,“201710”)
。如果要将其传递给Calendar.setTime()
,则不要对此对象调用.format(“MM/yyyy”)
,因为此方法返回一个字符串
。是的,它现在可以工作了。格式化日期=Date.parse(“yyyyMM”,“201710”)acalendar.setTime(格式化)谢谢Szymon!