KDK_SYSTEM_TIMEFORMAT_TRANSFORM(3) Library Functions Manual KDK_SYSTEM_TIMEFORMAT_TRANSFORM(3)

kdk_system_timeformat_transform - 时间格式转化

#include <libkydate.h>

extern kdk_timeinfo *kdk_system_timeformat_transform(struct tm *ptr);

Link with -lkydate.

The main function of this interface is to convert the time obtained from the struct tm of the standard library into a structure in the user settings format.

The argument ptr It is a pointer to struct tm.

On success, returns a pointer to a kdk_timeinfo structure is defined in <libkydate.h> as follows:
typedef struct _kdk_timeinfo{
char *time; // 时间
char *timesec; //带秒钟数时间
}kdk_timeinfo;

On error, return NULL.

#include "libkydate.h"
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include <time.h>
#include <stdlib.h>
#include <glib.h>
#include <glib-object.h>
int main()
{
	int ret = kdk_system_set_long_dateformat("2230年3月4日");
	ret = kdk_system_set_short_dateformat("22/5/3");
	char *ld = kdk_system_get_longformat_date();
	printf("long res = %s0, ld);
	free(ld);

	char *sd = kdk_system_get_shortformat_date();
	printf("short res = %s0, sd);
	free(sd);
	char *ll = kdk_system_get_longformat();
	printf("longformat = %s0, ll);
	free(ll);
	char *ss = kdk_system_get_shortformat();
	printf("shortformat = %s0, ss);
	free(ss);
	struct tm ptr;

	ptr.tm_year = 2322;
	ptr.tm_mon = 9;
	ptr.tm_mday = 3;
	char *lt = kdk_system_longformat_transform(&ptr);
	printf("longformat_transform = %s0, lt);
	free(lt);
	ptr.tm_year = 2022;
	ptr.tm_mon = 3;
	ptr.tm_mday = 2;
	char *st = kdk_system_shortformat_transform(&ptr);
	printf("shortformat_transform = %s0, st);
	free(st);
	kdk_logn_dateinfo *info = kdk_system_login_lock_dateinfo("szm");
	printf("date = %s,time = %s,week = %s0,info->date,info->time,info->week);
	kdk_free_logn_dateinfo(info);
	ptr.tm_hour = 19;
	ptr.tm_min = 3;
	ptr.tm_sec = 2;
	kdk_timeinfo *ti = kdk_system_timeformat_transform(&ptr);
	printf("time = %s, timesec = %s0, ti->time, ti->timesec);
	kdk_free_timeinfo(ti);
    return 0;
}

These functions are as per the withdrawn POSIX.1e draft specification. The following functions are Linux extensions: kdk_system_get_dateformat(), kdk_system_set_dateformat(), kdk_system_set_24_timeformat(), kdk_system_set_12_timeformat(), kdk_system_get_now_dateformat(), kdk_system_get_now_timeformat(), kdk_system_tran_dateformat(), kdk_system_nowtime(), kdk_system_nowdate(), kdk_system_shortweek(), kdk_system_longweek(), kdk_system_second(), kdk_system_logn_dateinfo(), kdk_system_gjx_time(), kdk_date_freeall(), kdk_free_dateinfo(), kdk_free_logn_dateinfo(), kdk_system_set_long_dateformat(), kdk_system_set_short_dateformat(), kdk_system_get_longformat_date(), kdk_system_get_shortformat_date(), kdk_system_get_longformat(), kdk_system_get_shortformat(), kdk_system_longformat_transform(), kdk_system_shortformat_transform(), kdk_system_login_lock_dateinfo() and kdk_free_timeinfo().

kdk_system_get_dateformat(3), kdk_system_set_dateformat(3), kdk_system_set_24_timeformat(3), kdk_system_set_12_timeformat(3), kdk_system_get_now_dateformat(3), kdk_system_get_now_timeformat(3), kdk_system_tran_dateformat(3), kdk_system_nowtime(3), kdk_system_nowdate(3), kdk_system_shortweek(3), kdk_system_longweek(3), kdk_system_second(3), kdk_system_logn_dateinfo(3), kdk_system_gjx_time(3), kdk_date_freeall(3), kdk_free_dateinfo(3), kdk_free_logn_dateinfo(3), kdk_system_set_long_dateformat(3), kdk_system_set_short_dateformat(3), kdk_system_get_longformat_date(3), kdk_system_get_shortformat_date(3), kdk_system_get_longformat(3), kdk_system_get_shortformat(3), kdk_system_longformat_transform(3), kdk_system_shortformat_transform(3), kdk_system_login_lock_dateinfo(3) and kdk_free_timeinfo(3).

Tue Sep 19 2023 Linux Programmer's Manual