दिलचस्प पोस्ट
Off_t, nlink_t, size_t और अन्य विशेष प्रकारों को प्रदर्शित करने के लिए printf का उपयोग कैसे करें? आर में एक चर का सटीक मान प्रदर्शित करें CodeIgniter PHP फ़्रेमवर्क – क्वेरी स्ट्रिंग प्राप्त करने की आवश्यकता है SQL सर्वर में के लिए लूप का सिंटैक्स HTTP-Basic प्रमाणीकरण के साथ एक HTTP GET अनुरोध बनाना सी + + प्रारूप मैक्रो / इनलाइन ओस्ट्रिंगस्ट्रीम सबसे बड़ी संभव संख्या बनाने के लिए एक सूची को सॉर्ट करें WPF और इकाई फ़्रेमवर्क के साथ डेटाएनेटेशन का उपयोग कर डेटा सत्यापित करें? एचटीटीपी क्लाइंट के साथ एंड्रॉइड में एसएसएल सत्रों का पुन: उपयोग करना PHP में XML फ़ाइल से एक विशेषता का मान कैसे प्राप्त करें? हर दिन 1: 01: स्प्रिंग क्रोन अभिव्यक्ति क्या 0 और -0 वही हैं? दो डेटाबेस के बीच MySQL डेटाबेस समन्वयन मैं बाश पाश सूची में सफेद स्थान से कैसे बच सकता हूं? ट्रिगर सही जावास्क्रिप्ट का उपयोग कर क्लिक करें

क्या सी ++ में एक मानक दिनांक / समय वर्ग है?

क्या सी ++ एसटीएल का मानक समय वर्ग है? या क्या मुझे धारा में लिखने से पहले c-string में कनवर्ट करना होगा? उदाहरण, मैं वर्तमान दिनांक / समय को स्ट्रिंग स्ट्रीम में आउटपुट करना चाहता हूं:

 टाइम_टी टीएम ();
 ओस्ट्रिंगस्ट्रीम साउथ;
 दक्षिणी << टीएम << समाप्त होता है;

इस मामले में मुझे बिना किसी स्वरूपण के नंबर के रूप में लिखा गया वर्तमान दिनांक / समय मिलता है। मैं c-runtime function strftime को tm पहले स्वरूपित करने के लिए उपयोग कर सकते हैं, लेकिन ऐसा लगता है कि यह आवश्यक नहीं होना चाहिए अगर stl का समय वर्ग है जिसे टाइम_t मान से तत्काल किया जा सकता है

Solutions Collecting From Web of "क्या सी ++ में एक मानक दिनांक / समय वर्ग है?"

एसटीएल का हिस्सा नहीं है लेकिन प्रसिद्ध पुस्तकालय को बढ़ावा देना है।

मैं boost::date का उपयोग करने के रास्ते पर जाना होगा यहां कुछ उदाहरण दिए गए हैं: http://www.boost.org/doc/libs/1_55_0/doc/html/date_time/date_time_io.html#date_time.io_tutorial

अगर आपने अभी तक बढ़ावा देने की कोशिश नहीं की है तो मैं आपको ऐसा करने के लिए प्रोत्साहित करता हूं क्योंकि यह आपको कई बुरे मुद्दों से बचाता है, क्योंकि यह उदाहरण के लिए थ्रेडींग जैसी अधिकांश ओएस आधारित चीजें मास्क करता है। boost में कई चीजें हैंडर केवल (टेम्पलेट लाइब्रेरी) हैं हालांकि datetime को एक lib या dll की आवश्यकता है।

Nitpicking: मानक टेम्पलेट पुस्तकालय एसटीएल सामान्य कंटेनर और एल्गोरिदम आदि से संबंधित है और भविष्य में भी तारीख संचालन और गणना के लिए कक्षाओं को शामिल करने की संभावना नहीं है …

सी ++ मानक लाइब्रेरी में एसटीएल और सी मानक पुस्तकालय के पिछले संस्करण शामिल हैं। उत्तरार्द्ध #include <ctime> माध्यम से कुछ तारीख और समय संबंधित फ़ंक्शन प्रदान करता है जो कि पहले से ही ऊपर उल्लेखित किया गया है

यदि लपेटकर (या बस का उपयोग करके) इन कार्यों को बढ़ावा देने में खींचने से पर्याप्त (और तेज़) है, तो इनके साथ जाएं उनके साथ कुछ भी गलत नहीं है

वहाँ <iomanip> हैडर में get_time और put_time हैं (मुझे लगता है कि ये सी ++ 11 के साथ आए हैं) जो स्ट्रिंग फ़ॉर्मेटिंग या पार्सिंग जॉब को प्रभावी ढंग से करता है।

वहाँ भी एक ctime (और time_t) विधि है जो स्ट्रिंग आउटपुट करती है (चार *)

ठीक। यहाँ सबसे निकटतम मैंने एक स्ट्रीम में सीधे समय लिखने के बारे में पाया है:

 time_t t(time(NULL)); // current time tm tm(*localtime(&t)); std::locale loc(""); // current user locale ostringstream sout; const std::time_put<TCHAR> &tput = std::use_facet<std::time_put<TCHAR> >(loc); tput.put(sout.rdbuf(), sout, _T('\0'), &tm, _T('x')); sout << ends; CString sTest(sout.str().c_str()); 

एक बहुत ही उपयोगी मार्गदर्शिका अपाचे सी ++ मानक पुस्तकालय संदर्भ गाइड है http://stdcxx.apache.org/doc/stdlibref/time-put.html#sec13