में स्थानीय टाइम्स और जीएमटी/यूटीसी के बीच कनवर्ट करना सी/सी ++ में स्थानीय समय और यूटीसी के बीच डेटाटाइम को बदलने का सबसे अच्छा तरीका क्या है?सी/सी ++
"डेटाटाइम" द्वारा, मेरा मतलब है कि कुछ समय का प्रतिनिधित्व जिसमें दिन और समय-सारिणी होती है। मैं time_t
, struct tm
, या किसी भी अन्य प्रतिनिधित्व से खुश रहूंगा जो इसे संभव बनाता है।
मेरा प्लेटफ़ॉर्म लिनक्स है।
यहां एक विशिष्ट समस्या है जिसे मैं हल करने की कोशिश कर रहा हूं: मुझे जूलियन तिथि और दिन में कई सेकंड वाले मानों की एक जोड़ी मिलती है। वे मूल्य जीएमटी में हैं। मुझे इसे स्थानीय-टाइमज़ोन "YYYYMMDDHHMMSS" मान में परिवर्तित करने की आवश्यकता है। मुझे पता है कि जूलियन तिथि को वाई-एम-डी में कैसे परिवर्तित किया जाए, और जाहिर है कि सेकंड को एचएचएमएमएसएस में परिवर्तित करना आसान है। हालांकि, मुश्किल हिस्सा टाइमज़ोन रूपांतरण है। मुझे यकीन है कि मैं एक समाधान का पता लगा सकता हूं, लेकिन मैं चारों ओर ठोकर खाने के बजाय "मानक" या "जाने-माने" तरीका ढूंढना पसंद करूंगा।
एक संभवतः संबंधित सवाल Get Daylight Saving Transition Dates For Time Zones in C
धन्यवाद! मुझे टाइमगैम() की तरह कुछ पता था, लेकिन नाम नहीं पता था। –
मदद करने के लिए खुशी हुई। समय रूपांतरण एक कठिन क्षेत्र हो सकता है। जब भी संभव हो यूटीसी में सबकुछ स्टोर करना एक अच्छा विचार है। टाइमज़ोन के बीच कनवर्ट करना भी मुश्किल है! –
हाँ, दुर्भाग्य से सिस्टम के डिजाइनरों ने स्थानीय समय को मैसेजिंग प्रोटोकॉल के लिए "मानक" टाइमस्टैम्प प्रारूप के रूप में चुना। जब लोग ऐसा करते हैं तो मुझे इससे नफरत है। –