我有兩個文本框,其中用戶將以12小時格式(例如10:30 AM到7:30 PM)輸入startTime
和endTime
。上午10點30分至下午7點30分找到時差
點擊Calculate
按鈕,用戶應該得到在文本框中輸入的兩次之間的差異。
我還沒有得到什麼數據類型應該處理這個輸入的文本。
我真的很感激,如果有人可以寫幾行程序讓我更好地理解。
我有兩個文本框,其中用戶將以12小時格式(例如10:30 AM到7:30 PM)輸入startTime
和endTime
。上午10點30分至下午7點30分找到時差
點擊Calculate
按鈕,用戶應該得到在文本框中輸入的兩次之間的差異。
我還沒有得到什麼數據類型應該處理這個輸入的文本。
我真的很感激,如果有人可以寫幾行程序讓我更好地理解。
首先使用DateTime.ParseExact()
將文本框解析爲DateTime
值date1
和date2
。
然後計算使用TimeSpan delta = date2 - date1;
但是你嘗試過什麼到目前爲止有什麼區別?在發佈之前,您需要投入更多精力去嘗試。
我嘗試了上述步驟,但這不適用於12小時時間格式 – user2380981 2013-05-14 12:00:26
@ user2380981您需要在ParseExact()'參數中指定12小時時間格式。看到這裏的文檔:http://msdn.microsoft.com/en-us/library/8kb3ddd4.aspx我希望你將需要指定格式爲「h:m tt」或可能只是「t」(請參閱http ://msdn.microsoft.com/en-us/library/az4se3k1.aspx) – 2013-05-14 12:05:12
我看到你今天加入了歡迎來到Stackoverflow。下面是你應該嘗試什麼: 使用DateTime.ParseExact
解析了時間,然後計算像他們的區別:
DateTime dt1 = DateTime.ParseExact("10:30 AM","h:mm tt", CultureInfo.InvariantCulture);
DateTime dt2 = DateTime.ParseExact("7:30 PM", "h:mm tt", CultureInfo.InvariantCulture);
TimeSpan difference = dt2 - dt1;
Console.WriteLine(difference.TotalHours);
Console.WriteLine(difference.TotalMinutes);
你應該把你在你的問題已經嘗試和你在哪裏停留在。你可能會看到http://www.whathaveyoutried.com/
嗨,歡迎來到StackOverflow。這個社區通常期望問題顯示出一定程度的研究和努力 - 你有沒有嘗試過自己沒用的東西? – 2013-05-14 09:29:04
看看[DateTime.Parse](http://msdn.microsoft.com/en-us/library/1k1skd40.aspx),[DateTime.TryParse](http://msdn.microsoft.com/en- us/library/ch92fbc1.aspx),[DateTime.ParseExact](http://msdn.microsoft.com/en-us/library/w2sa9yss.aspx)和[TimeSpan](http://msdn.microsoft.com/ EN-US /庫/ system.timespan.aspx)。 – 2013-05-14 09:31:02