Giriş
Şu satırı dahil ederiz.
Constructor
Örnek
Şöyle yaparız.
Şöyle yaparız.
Şöyle yaparız.
1.Facet kullanılarak yeni bir locale yaratılır.
Örnek
Şöyle yaparız.
Şöyle yaparız.
Örnek
Şöyle yaparız
Şöyle yaparız.
Örnek
Şöyle yaparız.
Elimizde bir ptime olsun.
Şöyle yaparız.
Şu satırı dahil ederiz.
#include <boost/date_time/posix_time/posix_time_io.hpp>
#include <boost/date_time/posix_time/posix_time.hpp>
Açıklaması şöyle. date_facet ile aynı işi görür. Bu iki sınıf arasındaki farkı anlamadım.The boost::date_time::time_facet is an extension of the boost::date_time::date_facet.ptime nesnesini stream'e yazdırmak için kullanılır.
Constructor
Örnek
Şöyle yaparız.
boost::posix_time::time_facet("%Y-%m-%d %H:%M:%S");
ÖrnekŞöyle yaparız.
auto m_facet = new boost::posix_time::wtime_facet(L"%Y%m%d-%H:%M:%f");
ÖrnekŞöyle yaparız.
boost::posix_time::time_facet(
"%Y/%m/%d %H:%M");
Kullanım1.Facet kullanılarak yeni bir locale yaratılır.
Örnek
Şöyle yaparız.
namespace /*static*/ {
// Defined elsewhere
auto m_facet = new boost::posix_time::wtime_facet(L"%Y%m%d-%H:%M:%f");
std::locale m_locale(std::wcout.getloc(), m_facet);
}
ÖrnekŞöyle yaparız.
std::string facetStr = "%Y/%m/%d %H:%M";
std::locale l (std::locale::classic(),
new boost::posix_time::time_facet(facetStr.c_str())));
2.Daha sonra locale bir stream'e geçilirÖrnek
Şöyle yaparız
std::wstring getActualTime() {
std::basic_stringstream<wchar_t> wss;
wss.imbue(m_locale);
wss << boost::posix_timemicrosec_clock::local_time();
return wss.str();
}
ÖrnekŞöyle yaparız.
std::stringstream stream;
std::string facetStr = "%Y/%m/%d %H:%M";
stream.imbue(std::locale(std::locale::classic(),
new boost::posix_time::time_facet(facetStr.c_str())));
3. Stream'e yazma işlemi yapılırÖrnek
Şöyle yaparız.
int main() {
std::wcout << getActualTime();
}
ÖrnekElimizde bir ptime olsun.
boost::posix_time::ptime m_time = ...;
Şöyle yaparız.std::stringstream stream;
std::string facetStr = "%Y/%m/%d %H:%M";
stream.imbue(std::locale(std::locale::classic(),
new boost::posix_time::time_facet(facetStr.c_str())));
stream << m_time;
ÖrnekŞöyle yaparız.
std::string example_datetime(const std::string &boostspec)
{
std::ostringstream os;
os.imbue(std::locale(std::locale::classic(),
new boost::posix_time::time_facet(boostspec.c_str())));
os << boost::posix_time::time_from_string("2014-02-13 08:30:00.000");
return os.fail() ? "invalid specifier" : os.str();
}
Çağırmak için şöyle yaparız.std::cout << example_datetime("%a % %") << std::endl;
std::cout << example_datetime("“%a % %”") << std::endl;
Çıktı olarak şunu alırız.Thu %
“Thu % %”
Hiç yorum yok:
Yorum Gönder