12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152 |
- #pragma once
- #include <chrono>
- #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";
- }
- }
|