首页 > 解决方案 > AD 将 whenCreated 属性转换为 Date

问题描述

我正在使用 Spring Boot LDAP Starter 连接到 AD。有一个属性,whenCreated它以 Zulu 格式存储日期时间。

Input : 20111101000413.0Z
Output : 2011-11-01

我尝试了以下代码段,但它不起作用。

SimpleDateFormat sdf = new SimpleDateFormat("yyyyMMddHHmmss");
sdf.setTimeZone(TimeZone.getTimeZone("GMT"));
Date cre = null;
try {
     cre = sdf.parse(createdAt);
} catch (ParseException e) {
    // TODO Auto-generated catch block
    e.printStackTrace();
}
mp.put("ldap_created_at", cre.toString() );

标签: javaspring-ldap

解决方案


您尝试使用 SimpleDateFormat *?

String createdAt = (String) attrs.get("whenCreated").get();
SimpleDateFormat sdf = new SimpleDateFormat("yyyyMMddHHmmss");
//sdf.setTimeZone(TimeZone.getTimeZone("GMT"));
Date cre = null;
try {
     cre = sdf.parse(createdAt);
} catch (ParseException e) {
    // TODO Auto-generated catch block
    e.printStackTrace();
}
sfd = new SimpleDateFormat("yyyy-MM-dd");
mp.put("ldap_created_at", sdf.format(cre) );

推荐阅读