カテゴリ: C# 更新日: 2025/11/23

C#で日時のフォーマットを行う方法を徹底解説!初心者でもわかるDateTime.ToString活用ガイド

C#で日時のフォーマットを行う方法(ToString・カスタム書式)
C#で日時のフォーマットを行う方法(ToString・カスタム書式)

先生と生徒の会話形式で理解しよう

生徒

「C#で日付や時間をきれいに表示したいのですが、どうやればいいのかわかりません…。」

先生

「C#では、日時を好きな形に整えるためにDateTime.ToStringという機能が使えますよ。」

生徒

「数字やスラッシュの位置を変えたり、年月日の表示順を変えたりもできるんですか?」

先生

「もちろんできます。それでは、実際に日時フォーマットの基本を一緒に学んでいきましょう。」

1. 日時のフォーマットとは?

1. 日時のフォーマットとは?
1. 日時のフォーマットとは?

C#では、パソコン内部で日時は一定の形式で管理されていますが、人間が使いやすい形に整えるためにはフォーマットという加工が必要です。フォーマットとは、日時を「どの順番で」「どんな記号を使って」表現するかを決めることです。例えば、日付を「2025年01月01日」と書くのか、「2025/01/01」にするのか、「01-01-2025」にするのかはすべてフォーマットの違いによるものです。これを自由に設定することで、画面表示やログ出力など、さまざまな場面で読みやすい日時を扱えるようになります。

2. DateTime.ToStringで簡単に日時を表示しよう

2. DateTime.ToStringで簡単に日時を表示しよう
2. DateTime.ToStringで簡単に日時を表示しよう

DateTime型には、日時を文字として出力するためのToStringメソッドがあります。これは「日時を人が読める形に変換する道具」と考えるとわかりやすいです。特にフォーマットを指定しない場合、環境ごとに決められている標準の形式で表示されますが、フォーマット文字列を渡すことで、好みの形に整えることができます。

まずは基本的な使い方を見てみましょう。


DateTime now = DateTime.Now;
Console.WriteLine(now.ToString());

これを実行すると、環境に応じた標準フォーマットで日時が出力されます。

3. カスタム書式で自由な形にフォーマットしよう

3. カスタム書式で自由な形にフォーマットしよう
3. カスタム書式で自由な形にフォーマットしよう

日時のフォーマットを細かく制御したいときは、カスタム書式(カスタムフォーマット)を使います。カスタム書式とは、記号を組み合わせて表現方法を自由に設定できる仕組みです。例えば"yyyy/MM/dd"のように文字を並べることで「年・月・日」を表現できます。

よく使うフォーマット記号をいくつか紹介します。

  • yyyy …… 西暦(4桁)
  • MM …… 月(2桁)
  • dd …… 日(2桁)
  • HH …… 時(24時間表記)
  • mm …… 分
  • ss …… 秒

実際にカスタム書式を使ってみましょう。


DateTime now = DateTime.Now;
string text = now.ToString("yyyy/MM/dd HH:mm:ss");
Console.WriteLine(text);

このコードでは「2025/01/01 12:34:56」のように、年月日と時刻を見やすく整えて出力します。フォーマット文字列は自由に変更できるため、「2025年01月01日」のような書き方も可能です。


DateTime now = DateTime.Now;
string text = now.ToString("yyyy年MM月dd日");
Console.WriteLine(text);

4. よく使う日時フォーマット例を紹介

4. よく使う日時フォーマット例を紹介
4. よく使う日時フォーマット例を紹介

実際の開発では、日時の表示形式を変える場面がとても多くあります。ここでは、初心者でもすぐに使える実用的なフォーマットをまとめて紹介します。用途に応じてコピペして使えるので、覚えておくと便利です。

● シンプルな年月日


now.ToString("yyyy/MM/dd");

● 時刻のみ


now.ToString("HH:mm:ss");

● ログ出力でよく使う形式


now.ToString("yyyy-MM-dd HH:mm:ss.fff");

● 日本語を使った読みやすい形式


now.ToString("yyyy年MM月dd日 HH時mm分");

同じデータでも、フォーマットを変えるだけでまったく違う印象になるのがわかると思います。用途に応じて一番読みやすい形式を選べるようになるのが、日時フォーマットの強力なところです。

5. カスタム書式でやりがちな間違い

5. カスタム書式でやりがちな間違い
5. カスタム書式でやりがちな間違い

初心者がつまずきやすいポイントとして、「大文字と小文字の区別」が挙げられます。例えば、月を表すMMと、分を表すmmは見た目がよく似ているため間違えやすいです。月をmmにしてしまうと、表示結果が「分」になり、「なぜか月が変な数字になる」という混乱が起こりやすいです。

また、秒を表すssとミリ秒を表すfffなども混同しがちです。フォーマット記号を使うときは、「これは何を意味する記号か」を確認しながら使うと安全です。少し時間をおいて慣れてくると、自然に使い分けられるようになります。

6. フォーマットはアプリの印象を大きく変える

6. フォーマットはアプリの印象を大きく変える
6. フォーマットはアプリの印象を大きく変える

日時のフォーマットは単なる表示の問題ではなく、アプリケーション全体の読みやすさや使いやすさに影響する大切な要素です。画面に表示される日時がわかりやすいだけで、ユーザーが受ける印象も大きく変わります。また、ログやデータ保存では整った形式の方が後から検索しやすく、トラブル対応もスムーズになります。フォーマットを正しく使えることは、実践的なプログラミングスキルの第一歩といえます。

カテゴリの一覧へ
新着記事
C#でタイムスタンプの精度を上げるためのテクニックを徹底解説!(初心者向け)
C#のコーディング規約(C# Coding Conventions)とは?読みやすいコードを書くための基本ルール
C#のデストラクタ(ファイナライザ)の使い方と注意点をやさしく解説!
COBOL資産のバージョン管理とは?初心者でもわかる保守と管理の基本
人気記事
No.1
Java&Spring記事人気No1
COBOLで学ぶSELECT文のORDER BY・GROUP BY活用法!初心者でもわかるデータ集計
No.2
Java&Spring記事人気No2
C#のpartialクラスとは?初心者でも理解できるクラス分割の基本
No.3
Java&Spring記事人気No3
COBOLのCOPY句の使い方を完全ガイド!初心者でもわかる共通部品の再利用方法
No.4
Java&Spring記事人気No4
COBOLで学ぶカーソル操作と複数行データ取得の基本
No.5
Java&Spring記事人気No5
COBOLの数値データ型「PIC 9」の使い方と注意点をやさしく解説!
No.6
Java&Spring記事人気No6
C#で型を調べる方法!GetType()・typeof演算子の違いと使い方
No.7
Java&Spring記事人気No7
C#の数値型をマスターしよう!int・double・decimalの違いと使い方
No.8
Java&Spring記事人気No8
C#の日付型(DateTime)と基本的な使い方を解説|初心者向け入門ガイド