Sample code for 30+ languages & platforms
C

Extract Timestamp from ULID

See more ULID/UUID Examples

Extract the date/time from a ULID.

Important: Chilkat's ULID functionality was introduced in v9.5.0.94.

Chilkat C Downloads

C
#include <C_CkDateTime.h>

void ChilkatSample(void)
    {
    BOOL success;
    const char *ulid;
    HCkDateTime dt;
    BOOL bLocal;

    success = FALSE;

    ulid = "01GRH14AA82EY9A7S99YYF2QDY";

    dt = CkDateTime_Create();

    // Unix timestamps stored in ULIDs should be UTC...
    bLocal = FALSE;
    // Set the CkDateTime from the timestamp contained in the ULID
    success = CkDateTime_SetFromUlid(dt,bLocal,ulid);
    if (success == FALSE) {
        printf("ULID was not valid.\n");
        CkDateTime_Dispose(dt);
        return;
    }

    // You can now get the date/time in any desired format.
    // For example:
    printf("Unix timestamp = %u\n",CkDateTime_GetAsUnixTime(dt,bLocal));
    printf("RFC822 = %s\n",CkDateTime_getAsRfc822(dt,bLocal));
    printf("Timestamp = %s\n",CkDateTime_getAsTimestamp(dt,bLocal));

    // Sample output:

    // Unix timestamp = 1675608861
    // RFC822 = Sun, 05 Feb 2023 14:54:21 GMT
    // Timestamp = 2023-02-05T14:54:21Z


    CkDateTime_Dispose(dt);

    }