[英]Convert DateTime String to Integer
我有這個2017-02-13T00:00:00 + 08:00 datetime作為xml文件中的字符串。 我想將其轉換為yyyyMMdd作為整數。
這是我嘗試過的:
Integer.Parse(myRow("ENT_DATE").ToString("yyyy") & myRow("ENT_DT").ToString("MM") & myRow("ENT_DT").ToString("dd"))
但是它返回一個錯誤。 Conversion from string "yyyy" to type 'Integer' is not valid.
myRow("ENT_DATE")
參考2017-02-13T00:00:00+08:00
問題在於, DataRow
的Item
屬性返回一個Object
引用,因此您沒有調用正確的ToString
方法。 該代碼應為:
CInt(CDate(myRow("ENT_DATE")).ToString("yyyyMMdd"))
首先將字段值轉換為Date
類型,然后再調用正確的Date.ToString
方法。
使用.ToString("yyyy")
僅適用於DateTime值,而不適用於字符串。
最簡單的方法可能就是使用Left()和Replace()來獲取所需的數字,然后將其轉換為Integer值,如下所示:
CInt(Left(myRow("ENT_DATE"), 10).Replace("-", ""))
無論給應用程序設置哪個時區,都會為給定的輸入生成20170213
。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.