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型が導入されており、それぞれの情報のみを扱えるようになっています。