簡體   English   中英

如何將日歷日期轉換為ldap日期

[英]How to convert calendar date to ldap date

目前我已經嘗試過這段代碼,但問題是第一行代碼給出了這個輸出20150217172651 + 0100,我所需的輸出是20150217172651.0Z

GeneralizedTime gt = new GeneralizedTime(Calendar.getInstance());       
    String gtADString = gt.toGeneralizedTime(
            GeneralizedTime.Format.YEAR_MONTH_DAY_HOUR_MIN_SEC,
            GeneralizedTime.FractionDelimiter.DOT, 1,
            GeneralizedTime.TimeZoneFormat.Z).replaceFirst("Z", "\\.0Z");

跑你的代碼

public class poc {
    public static void main(String[] args) {
        GeneralizedTime gt = new GeneralizedTime(Calendar.getInstance());
        String gtADString = gt.toGeneralizedTime(
                GeneralizedTime.Format.YEAR_MONTH_DAY_HOUR_MIN_SEC,
                GeneralizedTime.FractionDelimiter.DOT, 1,
                GeneralizedTime.TimeZoneFormat.Z).replaceFirst("Z", "\\.0Z");
        System.out.println(gtADString);

    }
}

得到這個作為輸出:

20150217163832.0Z

使用以下依賴項:

<dependency>
    <groupId>org.apache.directory.api</groupId>
    <artifactId>api-util</artifactId>
    <version>1.0.0-M28</version>
</dependency>`

您可以嘗試如下:

long t1 = calenderObj.getTimeInMillis();
calenderObj.set(1601, 0, 1);
long t2 = calenderObj.getTimeInMillis();
long ldap = (t1 - t2) * 10000;

希望這會有所幫助。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM