我正在開發一個Web應用程序,它是基於Visual Basic 6的以前的桌面版本的過渡。我必須在支持票證系統中顯示票證第一次到達時的時間,第一次被處理等Asp.Net中的時間格式化問題
我遇到了一些問題,當時間格式化,因爲我似乎必須使用幾種不同的方法來取得我想要取決於輸入,現在我很困惑,因爲我什麼時候應該使用每。
例如,使用系統DateNow時候才能以小時,分鐘和秒的答案這工作得很好:
Strings.Format(Date.Now, "HH:mm:ss")
但我在數據庫中的字符串值,存儲在一個特定的方式和我不能修改數據庫,使其擁有時間戳字段,我希望將其存儲起來,時間,分鐘和秒鐘一起縮短,因爲13h,57mins,20secs以字符串「135720」結尾。如果我嘗試,我得到了相同的
Dim info as string="135720"
Strings.Format(val(info),"HH:mm:ss)
答案是實際格式化「HH:MM:SS」,而不是十三點57分20秒我的預期。 但如果我在.net中使用VB6轉換功能:
Microsoft.VisualBasic.Format(Val(Info), "##:##:##")
它工作得很好。 我也必須使用Microsoft.VisualBasic.Format在嘗試修復使用部分時間(如「1357」或只是「135」)將錯誤存儲的字符串修復爲「13:57:00」或「13:50:00」時「使用基於字符串長度的大小寫選擇。
但我真的不希望在應用程序中使用舊的編程語言,因爲我並沒有最終理解新的工作方式以及我如何廣泛地查看文檔,沒有更聰明的人。
我也期待中日comunity但並沒有真正發現無論是在這樣的問題的答案: Is there a way to programmatically convert VB6 Formatting strings to .NET Formatting strings?
A regular expression to validate .NET time format
Time format of datetime field in .net
任何幫助尋找新我應該這樣做,爲什麼會大大降低。
謝謝
完美,時間跨度的世界將解決懸而未決的許多問題。非常感謝,這正是我所期待的。 只是建議任何人使用它,修剪你的ingoing字符串閃避意想不到的長度結果:) –
添加'修剪'和正則表達式檢查僅數字。 – MatSnow
再次更有用的是,我一直在使用instr()和.replace函數,它們遠沒有regex那麼強大。謝謝 –