在C語言中,我們經常需要對JSON格式的數據進行處理,其中格式化時間是非常常見的操作之一。此時,我們可以使用C語言的格式化函數將時間戳轉換成可讀的時間格式。
#include <stdio.h> #include <time.h> int main() { time_t rawtime; struct tm *timeinfo; char buffer[80]; time(&rawtime); timeinfo = localtime(&rawtime); strftime(buffer, 80, "%Y-%m-%d %H:%M:%S %Z", timeinfo); printf("當前時間為:%s\n", buffer); return 0; }
在上述代碼中,我們使用了time.h中的三個函數:time、localtime和strftime。
- time函數返回當前時間距離1970年1月1日的秒數(也稱為時間戳)。
- localtime函數將時間戳轉換為結構體tm類型,其中包含了年、月、日、時、分、秒等信息。
- strftime函數根據指定的格式字符串將tm結構體中的時間信息轉換為可讀格式并存儲到buffer中。
上述代碼的輸出結果如下:
當前時間為:2021-12-31 23:59:59 CST
在使用strftime函數時,我們需要注意格式字符串的書寫方式:
- %Y表示年份,比如2021;
- %m表示月份,范圍為1-12;
- %d表示日期,范圍為1-31;
- %H表示小時,范圍為0-23;
- %M表示分鐘,范圍為0-59;
- %S表示秒數,范圍為0-59;
- %Z表示時區,比如CST。
通過這些格式化符號的組合,我們可以將任意一個時間戳轉換成我們需要的時間格式。
上一篇vue id沖突