web-dev-qa-db-ja.com

vb.netで文字列を日時に変換する

次のような日時があります:

_201210120956
ccyyMMDDhhmm
_

私がこれを試してみると:

_Dim convertedDate As Date = Date.Parse(DateString)
Return convertedDate
_

私はこれを取り戻します:

_#10/12/2012#
_

私はそれに時間を失っています。

私はこれを読んだ 文字列をdatetime vb.netに変換する ですが、datetime.ParseExact()を使用すると次のようになります:

シンボル「ParseExact」を解決できません

サブストリングを使用せずにこれを日付時刻に変換する方法はありますか?ストレートコンバージョンですか?

9
ErocM

デコードパターンをParseExactに渡す

Dim d as string = "201210120956"
Dim dt = DateTime.ParseExact(d, "yyyyMMddhhmm", Nothing)

ParseExactが利用可能ですのみ Net FrameWork 2.0から。
まだ1.1を使用している場合はParseを使用できますが、文字列に適したIFormatProviderを提供する必要があります

22
Steve

ParseExactメソッドで試すことができます

サンプル

Dim format As String  
format = "d" 
Dim provider As CultureInfo = CultureInfo.InvariantCulture
result = Date.ParseExact(DateString, format, provider)
1
Aghilas Yakoub

別の方法として、日付と時刻の間にスペースを入れると、DateTime.Parseはフォーマットを認識します。それはあなたがそれを得ることができるほど簡単です。 (ParseExactがまだ認識されていない場合)

0
Josh Newton