X-Git-Url: https://git.stg.codes/stg.git/blobdiff_plain/b7e8712548323c7d4bacd999710c9963295f8950..ccb2e3ee51729c893c6eb8042cb0aff560c193b8:/stglibs/common.lib/common.cpp?ds=inline diff --git a/stglibs/common.lib/common.cpp b/stglibs/common.lib/common.cpp index 763df532..c27a387d 100644 --- a/stglibs/common.lib/common.cpp +++ b/stglibs/common.lib/common.cpp @@ -347,6 +347,20 @@ for (size_t i = 0; i < src.length() / 2; i++) } } //--------------------------------------------------------------------------- +std::string Encode12str(const std::string & src) +{ +std::string res; +Encode12str(res, src); +return res; +} +//--------------------------------------------------------------------------- +std::string Decode21str(const std::string & src) +{ +std::string res; +Decode21str(res, src); +return res; +} +//--------------------------------------------------------------------------- void Encode12(char * dst, const char * src, size_t srcLen) { for (size_t i = 0; i <= srcLen; i++) @@ -517,6 +531,22 @@ uint32_t inet_strington(const std::string & value) return result; } //----------------------------------------------------------------------------- +std::string TimeToString(time_t time) +{ +struct tm brokenTime; + +brokenTime.tm_wday = 0; +brokenTime.tm_yday = 0; +brokenTime.tm_isdst = 0; + +gmtime_r(&time, &brokenTime); + +char buf[32]; +strftime(buf, 32, "%Y-%m-%d %H:%M:%S", &brokenTime); + +return buf; +} +//----------------------------------------------------------------------------- int ParseTariffTimeStr(const char * str, int &h1, int &m1, int &h2, int &m2) { char hs1[10], ms1[10], hs2[10], ms2[10]; @@ -790,6 +820,14 @@ const std::string & x2str(uint64_t x, std::string & s) return unsigned2str(x, s); } //--------------------------------------------------------------------------- +const std::string & x2str(double x, std::string & s) +{ +char buf[256]; +snprintf(buf, sizeof(buf), "%f", x); +s = buf; +return s; +} +//--------------------------------------------------------------------------- std::string & TrimL(std::string & val) { size_t pos = val.find_first_not_of(" \t"); @@ -819,6 +857,12 @@ std::string & Trim(std::string & val) return TrimR(TrimL(val)); } //--------------------------------------------------------------------------- +std::string Trim(const std::string & val) +{ +std::string res(val); +return TrimR(TrimL(res)); +} +//--------------------------------------------------------------------------- std::string ToLower(const std::string & value) { std::string res;