मेरे पास एक बहुत ही सरल डेटटाइम ऑब्जेक्ट है जो 01-01-0001 दिनांक पर सेट है। मुझे दिनों में, इस डेटटाइम में जोड़ने के लिए एक मूल्य प्रदान किया गया है। मैं अपने परिणामों में एक अप्रत्याशित ऑफसेट देख रहा हूं, हालांकि, दो दिनों के। के इतने की तरह) मैं AddDays के परिणामों को मुद्रित नाटक (कहते हैं, करते हैं:सी # डेटटाइम ऐडडे अप्रत्याशित ऑफ़सेट
DateTime myDateTime = DateTime.Parse("01-01-0001 00:00:00");
Console.WriteLine(myDateTime.AddDays(735768.0));
ऊपर देखा मूल्य के साथ
(735768.0) मैं की "2015/06/18 12:00:00 AM" एक निर्गम उम्मीद । हालांकि, इसके बजाय मुझे "6/20/2015 12:00:00 पूर्वाह्न" मिलता है। जब मैं निम्नलिखित वेबसाइट पर जाएं और 01-01-0001 के बीच के दिनों में अवधि की गणना -> 2015/06/18 मैं 735,768 दिनों के मूल्य मिलता है, के रूप में उम्मीद:
http://www.timeanddate.com/date/durationresult.html?m1=01&d1=01&y1=0001&m2=06&d2=18&y2=2015
मैं कर रहा हूँ कुछ गड़बड़ है, या क्या हुड के नीचे कुछ चल रहा है जिसके बारे में मुझे पता नहीं है?
यदि आप सोच रहे हैं, तो 735,768 उस डेटा के पहले समय मूल्य का प्रतिनिधित्व करता है जिसके साथ मैं काम कर रहा हूं। डेटा 06/18/2015 00:00:00 से शुरू होने की उम्मीद है।
संपादित करें: मुझे ध्यान रखना चाहिए कि मैंने केवल उस विशेष वेबसाइट को एक विवादित स्रोत के उदाहरण के रूप में प्रदान किया है। सरकारी मौसम एजेंसी समेत अन्य वेबसाइटें मुझे सभी से डेटा प्राप्त करती है 06-18-2015। इसका मतलब यह नहीं है कि सी # गलत है। मैं इतनी उत्सुक हूं कि यह ऑफसेट कहां से आया, और क्यों।
आप लीप वर्ष considerated था।? –
क्यों डेटटाइम स्टोर न करें? लीप साल शायद? इसे आज़माएं और देखें कि आपको क्या मिलता है: 'टाइमस्पेन diff = नया डेटटाइम (2015, 6, 15) - myDateTime;' और 'diffotalDays 'मान देखें। –
आप उस तारीख का मूल्य क्यों उम्मीद करते हैं? क्योंकि दूसरी वेबसाइट ने ऐसा कहा है, या क्योंकि आपने इसकी गणना की है? क्या होगा यदि यह वेबसाइट गलत है और 'AddDays' फ़ंक्शन नहीं है? क्या आपने कई स्रोतों के माध्यम से पुष्टि की है? – Kritner