Visual Basic サンプル集 |
![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() |
Visual Basic 中学校 > Visual Basic サンプル集 > Visual Basic サンプル集目次 >
日付を文字列に変換する例
2020/6/18
"2004/08/05" のように変換する例
Dim sourceDate
As Date =
New Date(2004, 8,
5) Dim st As String = sourceDate.ToString("yyyy\/MM\/dd") Debug.WriteLine(st) '2004/08/05 と表示されます。 |
"2004/8/5" のように変換する例
Dim sourceDate
As Date =
New Date(2004, 8,
5) Dim st As String = sourceDate.ToString("yyyy\/M\/d") Debug.WriteLine(st) '2004/8/5 と表示されます。 |
"2004年08月05日" のように変換する例
Dim sourceDate
As Date =
New Date(2004, 8,
5) Dim st As String = sourceDate.ToString("yyyy年MM月dd日") Debug.WriteLine(st) '2004年08月05日 と表示されます。 |
"04/08/05" のように変換する例
Dim sourceDate
As Date =
New Date(2004, 8,
5) Dim st As String = sourceDate.ToString("yy\/MM\/dd") Debug.WriteLine(st) '04/08/05 と表示されます。 |
"20040805" のように変換する例
Dim sourceDate
As Date =
New Date(2004, 8,
5) Dim st As String = sourceDate.ToString("yyyyMMdd") Debug.WriteLine(st) '20040805 と表示されます。 |
"H16/08/05" のように変換する例
Dim sourceDate
As New Date(2004, 8, 5) Dim Japanese As New CultureInfo("ja-JP") Japanese.DateTimeFormat.Calendar = New JapaneseCalendar Dim st As String = sourceDate.ToString("ggy\/MM\/dd", Japanese) Select Case Japanese.DateTimeFormat.Calendar.GetEra(sourceDate) Case 1 '明治 st = Replace(st, "明治", "M") Case 2 '大正 st = Replace(st, "大正", "T") Case 3 '昭和 st = Replace(st, "昭和", "S") Case 4 '平成 st = Replace(st, "平成", "H") Case 5 '令和 st = Replace(st, "令和", "R") End Select Debug.WriteLine(st) 'H16/08/05 と表示されます。 |
参考:和暦と西暦を変換する
別のやり方
Dim sourceDate
As Date =
New Date(2004, 8,
5) Dim japaneseCalendar As New JapaneseCalendar Dim eraPredix As String = {"M", "T", "S", "H", "R"}(japaneseCalendar.GetEra(sourceDate) - 1) Dim st As String = String.Format("{0}{1}{2:\/MM\/dd}", eraPredix, japaneseCalendar.GetYear(sourceDate), sourceDate) Debug.WriteLine(st) 'H16/08/05 と表示されます。 |
"平16年8月5日" のように変換する例
Dim sourceDate
As New Date(2004, 8, 5) Dim Japanese As New CultureInfo("ja-JP") Japanese.DateTimeFormat.Calendar = New JapaneseCalendar Dim st As String = sourceDate.ToString("ggy年M月d日", Japanese) Select Case Japanese.DateTimeFormat.Calendar.GetEra(sourceDate) Case 1 '明治 st = Replace(st, "明治", "明") Case 2 '大正 st = Replace(st, "大正", "大") Case 3 '昭和 st = Replace(st, "昭和", "昭") Case 4 '平成 st = Replace(st, "平成", "平") Case 5 '令和 st = Replace(st, "令和", "令") End Select 'デフォルトでは1年は「元年」です。「元年」ではなく「1年」にしたい場合、このコメントを解除します。 'st = Replace(st, "元年", "1年") Debug.WriteLine(st) '平16年8月5日 と表示されます。 |
参考:和暦と西暦を変換する
別のやり方
Dim sourceDate
As Date =
New Date(2004, 8,
5) Dim Japanese As New CultureInfo("ja-JP") Dim japaneseCalendar As New JapaneseCalendar Japanese.DateTimeFormat.Calendar = japaneseCalendar Dim eraName As String = Japanese.DateTimeFormat.GetAbbreviatedEraName(japaneseCalendar.GetEra(sourceDate)) Dim st As String = String.Format("{0}{1}", eraName, sourceDate.ToString("y年M月d日", Japanese)) Debug.WriteLine(st) '平16年8月5日 と表示されます。 |
メモ:1年は「元年」に変換されます。
"平成16年8月5日" のように変換する例
Dim sourceDate
As New Date(2004, 8, 5) Dim Japanese As New CultureInfo("ja-JP") Japanese.DateTimeFormat.Calendar = New JapaneseCalendar Dim st As String = sourceDate.ToString("ggy年M月d日", Japanese) Debug.WriteLine(st) '平成16年8月5日 と表示されます。 |
参考:和暦と西暦を変換する
メモ:1年は「元年」に変換されます。
"08.05.2004" のように変換する例
Dim sourceDate
As Date =
New Date(2004, 8,
5) Dim st As String = sourceDate.ToString("MM\.dd\.yyyy") Debug.WriteLine(st) '08.05.2004 と表示されます。 |
"200408" のように変換する例
Dim sourceDate
As Date =
New Date(2004, 8,
5) Dim st As String = sourceDate.ToString("yyyyMM") Debug.WriteLine(st) '200408 と表示されます。 |