Linux時間和字元轉換函式

2021-06-25 10:22:48 字數 2226 閱讀 8046

//linux作業系統提供的時間操作函式。

時間操作函:

/* *  date +%s -d '2004/06/04 20:30:00'  //將時間轉換成毫秒數。

*  int gettimeofday(struct timeval *tv, struct timezone *tz);

char *asctime(const struct tm *tm);

char *asctime_r(const struct tm *tm, char *buf);

char *ctime(const time_t *timep);

char *ctime_r(const time_t *timep, char *buf);

struct tm *gmtime(const time_t *timep);

struct tm *gmtime_r(const time_t *timep, struct tm *result);

struct tm *localtime(const time_t *timep);

struct tm *localtime_r(const time_t *timep, struct tm *result);

*/ struct timeval ;

time_t time(time_t *t);

truct tm ;

int gettimeofday(struct timeval *tv, struct timezone *tz);

//以上兩個函式是用來獲取當前系統時間的秒數的。 gettimeofday()方法可以獲取當前系統時間的毫秒值。

//將該毫秒值轉換成可讀的字元格式日期的方法如下:

ctime(time_t * time); //直接輸出當前本地時間字串格式。

time()-->gmtime(time_t *time) --> 得到乙個 struct tm{} -->asctime(tm *tm);得到時間格式化字串。得到的時間不是本地時間。

time()-->gmtime(time_t *time) --> 得到乙個 struct tm{} -->strftime() //得到乙個自己格式話的乙個時間字串

gettimeofday()-->localtime(time_t *time)-->得到乙個struct tm{}-->asctime(struct tm *t) //得到乙個時間日期字串。

gettimeofday()-->localtime(time_t *time)-->得到乙個struct tm{}-->strftime(struct tm * t) //得到乙個時間日期字串

mktime(struct tm * t) //可以通過這個將tm結構提轉換成乙個time_t,當前時間的秒值。

下面是相關的程式demo:

#include#include#include#includevoid main(void)

;    struct timeb;

result = gettimeofday(&t,null);

if(result < 0 )

ct = ctime(&t.tv_sec);    

printf("ct = %s \r\n", ct);

//ctime(time_t * t); 和localtime(time_t *t), mktime(tm) (strftime() 格式化字元輸出時間。)

//這四個函式都受到環境變數tz的影響。

t1 = gmtime(&t.tv_sec);    

t1 = localtime(&t.tv_sec);

printf("t1->hours = %d",t1->tm_hour);

//    strftime(timearray, 100, "%y-%m-%d %h:%m:%s", t1);

//    strftime(timearray, 100, "%y-%m-%d %x", t1);

//    strftime(timearray, 100, "%y-%m-%d %t", t1);

strftime (timearray,sizeof(timearray),"now is %y/%m/%d %h:%m:%s",t1);

printf("%s \r\n",timearray);

asct = asctime(t1);

printf("asct = %s", asct);

}

Linux下字元轉換函式

linux下面的沒有命名為 widechartomultibyte 和 multibytetowidechar 函式,widechartomultibyte,multibytetowidechar是windows下的函式,在linux下也有類似的兩個函式 mbstowcs wcstombs 值得注意...

JS 時間轉換函式 字串時間轉換毫秒(互轉)

字串轉化為日期 let util function if y test fmt fmt fmt.replace regexp.1,this.getfullyear substr 4 regexp.1.length for var k in o if new regexp k test fmt fmt...

Python 時間和字串轉換

例子 usr bin python coding utf 8 import time 格式化成2016 03 20 11 45 39形式 print time.strftime y m d h m s time.localtime 格式化成sat mar 28 22 24 24 2016形式 pri...