2016-12-22 11 views
-2

文字で動作するthisthisを見ています。これは私が目指しているものではありません。VB.Netの特定の文字数に基づいて文字列を分割します

私は8種類の数字を受け取ります。私は特定のポイントでそれらを分割し、スラッシュを挿入する必要があります。

例:

着信01/01/2001

を等しくする必要が01012001私はそれが完了していないことを知っているにもかかわらず、このような何かに取り組んできました。

 Dim dateString As String = Search_.IssuedDT.ToShortDateString 
     Dim forwardSlash As Char = "/" 
     Dim correctedString As String() = dateString.Split() 

ボトムライン、私はあなたが日付を解析について注意する必要があり

+0

は、特に日付「入」のデータですか? –

+0

これらは日付である必要があります、それは私に似ていますか? – Codexer

+0

はい、しかし、ユーザはスラッシュを入れたくないので、それを修正することになります。 –

答えて

2

を文字2と3の間にスラッシュを追加する必要があり、4と5:いくつかの国は、月 - 日 - 年使用他の多くの人々が日 - 月 - 年を使用しています。あなたに何ができるかのアイデアを与えるために

Option Infer On 
Option Strict On 

Module Module1 

    Sub Main() 
     Dim s = "31012001" 
     Dim d As DateTime 
     d = DateTime.ParseExact(s, "ddMMyyyy", Globalization.CultureInfo.InvariantCulture) 

     ' if you need a string representation of the date: 
     Dim q = d.ToString("dd/MM/yyyy") 

     Console.WriteLine(q) 

     ' leaving the date as a date, as it should be, and presenting it as a string: 
     Console.WriteLine(d.ToString("dd-MMM-yyyy")) 

     s = "01312001" ' not in ddMMyyyy format 
     If DateTime.TryParseExact(s, "ddMMyyyy", Nothing, Globalization.DateTimeStyles.None, d) Then 
      Console.WriteLine("Converted successfully as " & d.ToString("dd/MM/yyyy")) 
     Else 
      Console.WriteLine("Could not parse " & s & " as dd/MM/yyyy") 
     End If 


     Console.ReadLine() 

    End Sub 

End Module 
+0

これはこれを使用している米国のみです。すぐにそれについての話をしました。 –

+0

あなたは絶対に正しいです、もしこれがグローバルな顧客とのより大きいサイトだったら、あなたは頭の上の釘を右に打っています –

+1

@KevinFischerプログラムが米国でのみ使用されるならば、 "dd "" MM "に、逆に" MM "を" dd "に変換します。 N.B. 「MM」は月を意味し、「mm」は分を意味する。 –

関連する問題