#pragma once #include #include "String.Format.tlh" //----------------------------------------------------------------------------- // 用于格式化 chrono 下的 时 分 秒 毫秒 等 // // #include "String.Format.Chrono.hpp" // assert (eSTR::DString::FromFormat ("{$}{$}-{$}"_sv, 11, 22, 33ms) == eSTR::DString ("1122-33ms")); // assert (eSTR::DString::FromFormat ("{$}{$}-{$}"_sv, 11, 22, 44s) == eSTR::DString ("1122-44s")); // assert (eSTR::DString::FromFormat ("{$}{$}-{$}"_sv, 11, 22, 55min) == eSTR::DString ("1122-55min")); // assert (eSTR::DString::FromFormat ("{$}{$}-{$}"_sv, 11, 22, 66h) == eSTR::DString ("1122-66hour")); // //----------------------------------------------------------------------------- namespace ECOM::Utility::String { template <> inline std::string ToString (const std::chrono::nanoseconds & d) { return std::to_string (d.count ()) + "ns"; } template <> inline std::string ToString (const std::chrono::microseconds & d) { return std::to_string (d.count ()) + "us"; } template <> inline std::string ToString (const std::chrono::milliseconds & d) { return std::to_string (d.count ()) + "ms"; } template <> inline std::string ToString (const std::chrono::seconds & d) { return std::to_string (d.count ()) + "s"; } template <> inline std::string ToString (const std::chrono::minutes & d) { return std::to_string (d.count ()) + "min"; } template <> inline std::string ToString (const std::chrono::hours & d) { return std::to_string (d.count ()) + "hour"; } }