C time t與string之間轉換的工具類

2021-07-05 23:21:32 字數 2175 閱讀 5342

之前在做專案的時候遇到了這個需求,當然baidu到了這個工具類一直忘了分享,現在補上分享,但是出處忘了,如果有博友知道出處,我到時候再補充上。

工具類支援兩種格式 一種精確到日,一種精確到秒,如果有其他需求 可以自己修改方法的實現。

#include #include /*

string to time_t

時間格式 2009-3-24

*/class convert_between_string_time_t

int iyear = atoi(pbeginpos);

int imonth = atoi(ppos + 1);

ppos = strstr(ppos + 1,"-");

if(ppos == null)

int iday = atoi(ppos + 1);

struct tm sourcedate;

memset((void*)&sourcedate,0,sizeof(sourcedate));

sourcedate.tm_mday = iday;

sourcedate.tm_mon = imonth - 1;

sourcedate.tm_year = iyear - 1900;

timedata = mktime(&sourcedate);

return 0;

};/*

time_t to string

*/static int api_timetostring(std::string &strdatestr,const time_t &timedata)

;// struct tm

// ;

//int tm_sec 代表目前秒數,正常範圍為0-59,但允許至61秒

//int tm_min 代表目前分數,範圍0-59

//int tm_hour 從午夜算起的時數,範圍為0-23

//int tm_mday 目前月份的日數,範圍01-31

//int tm_mon 代表目前月份,從一月算起,範圍從0-11

//int tm_year 從1900 年算起至今的年數

//int tm_wday 一星期的日數,從星期一算起,範圍為0-6

//int tm_yday 從今年1月1日算起至今的天數,範圍為0-365

//int tm_isdst 日光節約時間的旗標

/*string to time_t

時間格式 2009-3-24 0:00:08 或 2009-3-24

*/static int api_stringtotimeex(const std::string &strdatestr,time_t &timedata)

int iyear = atoi(pbeginpos);

int imonth = atoi(ppos + 1);

ppos = strstr(ppos + 1,"-");

if(ppos == null)

int iday = atoi(ppos + 1);

int ihour=0;

int imin=0;

int isec=0;

ppos = strstr(ppos + 1," ");

//為了相容有些沒精確到時分秒的

if(ppos != null)}}

struct tm sourcedate;

memset((void*)&sourcedate,0,sizeof(sourcedate));

sourcedate.tm_sec = isec;

sourcedate.tm_min = imin;

sourcedate.tm_hour = ihour;

sourcedate.tm_mday = iday;

sourcedate.tm_mon = imonth - 1;

sourcedate.tm_year = iyear - 1900;

timedata = mktime(&sourcedate);

return 0;}/*

time_t to string 時間格式 2009-3-24 0:00:08

*/static int api_timetostringex(std::string &strdatestr,const time_t &timedata)

};

wstring 與 string 之間的轉換

include stdafx.h include common.h include include include std string ws2s const std wstring ws std wstring s2ws const std string s bool bstr to wstrin...

CString與string之間的轉換

嘗試了網上大多數方法,很多都是錯誤的,經過 n次的折騰,終於搞出來了,cstring 是一種很有用的資料型別。它們很大程度上簡化了 mfc中的許多操作,使得 mfc在做字串操作的時候方便了很多。不管怎樣,使用 cstring 有很多特殊的技巧,特別是對於純 c背景下走出來的程式設計師來說有點難以學習...

string 與char char 之間的轉換

1 首先必須了解,string可以被看成是以字元為元素的一種容器。字元構成序列 字串 有時候在字串行中進行遍歷,標準的string類提供了stl容器介面。具有一些成員函式比如begin end 迭代器可以根據他們進行定位。注意,與char 不同的是,string不一定以null 0 結束。strin...