我是否可以知道如何将“2016-02-25T07:05:22.0Z
”转换为“yyyyMMddHHmmssS
”,然后转换为“yyyyDDDHHmmssS
”格式。
我尝试过以下代码:
String test = "2016-02-25T07:05:22.0Z";
SimpleDateFormat formatter = new SimpleDateFormat("yyyyMMddHHmmssS");
Date date = formatter.parse(how to pass the test value);
System.out.println(date);
System.out.println(formatter.format(date));
对于上述情况,输出值应为“20160560705220
”。
该功能类似于其中一个应用程序,20160560705220将转换为“yyyyDDDHHmmssS
”,然后转换为“'yyyy-MM-dd''T''HH:mm:ss.S''Z'
”作为响应请求soap xml传递。
DECLARE rInHeader REFERENCE TO rEnvXmlNsc.UISInqSubscriberResponse.*:Envelope.*:Header;
IF rInHeader.*:CESInformation.*:SubscriberContextIdentifier <> '' THEN
SET rOutMember.ct:MemberEffectiveTimestamp = CAST(CAST(CAST(CAST(rInHeader.*:CESInformation.*:SubscriberContextIdentifier AS DECIMAL) AS CHARACTER) AS TIMESTAMP FORMAT 'yyyyDDDHHmmssS') AS CHARACTER FORMAT 'yyyy-MM-dd''T''HH:mm:ss.S''Z');
END IF;
现在我需要将这部分代码转换为“20160560705220”。
任何人都可以帮助这一个。
答案 0 :(得分:1)
String test = "2016-02-25T07:05:22.0Z";
SimpleDateFormat formatter = new SimpleDateFormat("yyyyMMddHHmmssS");
SimpleDateFormat formatter2 = new SimpleDateFormat("yyyy-MM-dd'T'HH:mm:ss.'0Z'");
Date date = null;
try
{
date = formatter2.parse(test);
}
catch (ParseException e)
{
// TODO Auto-generated catch block
e.printStackTrace();
}
System.out.println(date);
System.out.println(formatter.format(date));