这个时间类主要是用来获取系统毫秒时间、时区、当地时间,以及对传入的时间的转换,适用于linux和windows。
TimeUtility.h
#pragma once
#include <string>
#pragma once
#include <string>
namespace COMMON
{
namespace UTILITY
{
class TimeUtility
{
public:
TimeUtility();
~TimeUtility();
static unsigned long GetTickCount2();
static time_t ConvertTimerToTime_t(std::string dateTime);
static std::string ConvertTime_tToTimeString(time_t time);
static std::string formatA(const char* fmt, ...);
static int GetTimezone();
static time_t StringUTCToTime_t(const std::string& strUTCTime);
static std::string StringUTCToLocal(std::string UTCTime);
static std::string StringLocalToUTC(std::string localTime);
static time_t StringLocalToTime_t(const std::string& strLocalTime);
static std::string StringTimeAddSecond(const std::string& dateTime, const char ops, time_t second);
};
}
}
TimeUtility.cpp
#include "TimeUtility.h"
#ifdef WIN32
#include <windows.h>
#include <Iphlpapi.h>
#include <io.h>
#else
#include <sys/time.h>
#endif
#include <algorithm>
#include <sstream>
#include <stdlib.h>
#include <stdio.h>
#include <stdarg.h>
#include <string>
#include <vector>
namespace COMMON
{
namespace UTILITY
{
TimeUtility::TimeUtility()
{
}
TimeUtility::~TimeUtility()
{
}
unsigned long TimeUtility::GetTickCount2() //获取当前系统毫秒时间
{
#ifdef WIN32
return GetTickCount