C#:
日付を文字列に変換する
How to: (やり方)
using System;
using System.Globalization;
class Program
{
static void Main()
{
DateTime now = DateTime.Now;
// 標準の日付フォーマット
string simpleDate = now.ToString("dd/MM/yyyy");
Console.WriteLine(simpleDate); // 出力: 24/03/2023
// 独自のフォーマット
string customFormat = now.ToString("yyyy年MM月dd日 HH時mm分ss秒");
Console.WriteLine(customFormat); // 出力: 2023年03月24日 13時45分18秒
// カルチャを意識した日付フォーマット
CultureInfo japaneseCulture = new CultureInfo("ja-JP");
string japaneseDate = now.ToString("f", japaneseCulture);
Console.WriteLine(japaneseDate); // 出力: 2023年3月24日 13:45
}
}
Deep Dive (深掘り)
日付を文字列に変換する処理は.ToString()
メソッドで行われます。.NET
の初期バージョンから利用できる機能です。このメソッドは多様なフォーマットパターンをサポートし、"G"
、"D"
などの標準フォーマットと、カスタムフォーマット文字列を使用できます。また、CultureInfo
クラスを使うと地域に合わせた日付表記を生成できるため、国際化対応のアプリケーション開発に便利です。他に同じ目的で使える方法にはString.Format()
やStringBuilder
クラスがあり、より複雑な文字列操作が求められる場合に活用できます。.NET 6
以降では日付と時間の新たなパターンとしてDateOnlyと TimeOnly型が導入されており、それぞれの情報のみを扱えるようになっています。