जवाबों:
आप निम्न कार्य कर सकते हैं:
TimeSpan duration = b - a;
आप की जरूरत है, यानी करने के लिए timespan वर्ग में तरीकों के बहुत सारे बनाया गया है
duration.TotalSeconds
duration.TotalMinutes
निम्नलिखित का प्रयास करें
double hours = (b-a).TotalHours;
यदि आप केवल उन दिनों के अंतर को छोड़कर घंटे का अंतर चाहते हैं, तो आप निम्नलिखित का उपयोग कर सकते हैं
int hours = (b-a).Hours;
इन दो गुणों के बीच का अंतर मुख्य रूप से देखा जाता है जब समय अंतर 1 दिन से अधिक होता है। घंटे की संपत्ति केवल दो तिथियों के बीच वास्तविक घंटे के अंतर की रिपोर्ट करेगी। इसलिए यदि दो तिथियां 100 साल से भिन्न होती हैं, लेकिन दिन में एक ही समय होती हैं, तो घंटे 0. लौट आएंगे। लेकिन कुल जमा दो तिथियों (इस मामले में 876,000 घंटे) के बीच घटने वाले घंटों के बीच का अंतर लौटाएगा।
दूसरा अंतर यह है कि TotalHours आंशिक घंटे लौटाएगा। यह वही हो सकता है या नहीं जो आप चाहते हैं। यदि नहीं, तो Math.Round इसे आपकी पसंद के अनुसार समायोजित कर सकता है।
क्या आप शायद देख रहे हैं:
int Difference = (a-b).Hours;
समय अंतर b / w समय-समय पर इस पद्धति का उपयोग करके दिखाया जाएगा।
private void HoursCalculator()
{
var t1 = txtfromtime.Text.Trim();
var t2 = txttotime.Text.Trim();
var Fromtime = t1.Substring(6);
var Totime = t2.Substring(6);
if (Fromtime == "M")
{
Fromtime = t1.Substring(5);
}
if (Totime == "M")
{
Totime = t2.Substring(5);
}
if (Fromtime=="PM" && Totime=="AM" )
{
var dt1 = DateTime.Parse("1900-01-01 " + txtfromtime.Text.Trim());
var dt2 = DateTime.Parse("1900-01-02 " + txttotime.Text.Trim());
var t = dt1.Subtract(dt2);
//int temp = Convert.ToInt32(t.Hours);
//temp = temp / 2;
lblHours.Text =t.Hours.ToString() + ":" + t.Minutes.ToString();
}
else if (Fromtime == "AM" && Totime == "PM")
{
var dt1 = DateTime.Parse("1900-01-01 " + txtfromtime.Text.Trim());
var dt2 = DateTime.Parse("1900-01-01 " + txttotime.Text.Trim());
TimeSpan t = (dt2.Subtract(dt1));
lblHours.Text = t.Hours.ToString() + ":" + t.Minutes.ToString();
}
else
{
var dt1 = DateTime.Parse("1900-01-01 " + txtfromtime.Text.Trim());
var dt2 = DateTime.Parse("1900-01-01 " + txttotime.Text.Trim());
TimeSpan t = (dt2.Subtract(dt1));
lblHours.Text = t.Hours.ToString() + ":" + t.Minutes.ToString();
}
}
अपने फ़ील्ड आईडी का उपयोग करें
var t1 4:00 AM के मान को कैप्चर करता है
यह कोड किसी के लिए मददगार हो सकता है।