C# - よく使うクラス - DateTime・TimeSpan - 書式指定子


 クラウディア


1. 概要
2. 書式指定子
3. 参考サイト

1. 概要

 「DateTime」も「TimeSpan」も、「ToString()」で使う書式指定子は、特にわたしが使うものは、ほぼ共通で使えます。

2. 書式指定子

 わたしが主に使用する「DateTime」「TimeSpan」の「ToString()」に対応する、書式指定子は下記のものです。
書式指定子 意  味 備考
yyyy 西暦4桁
MM 月2桁(01~12)
dd 月の日にち2桁(01~31)
HH 24時間形式の時間(00~23)
mm 分(00~59)
ss 秒(00~59)
f 日時値の秒部分の 1/10。
fffffff 日時値の秒部分の 1/10000000。

 「f」は「fffffff」まで、「f」の字を重ねるのが、10-f 乗になります。

 60秒以内の値で、秒以下を小数点以下、6桁まで表示しようとしたときに。


TimeSpan.ToString("ss.ffffff");
 と書いたら、実行時にエラーになりました。  「.NET 8.0」でのことです。  少し、試行錯誤しまして。

TimeSpan.ToString(@"ss\.ffffff");
 で落ち着きました。  「\」(バックスラッシュ)でエスケープするだけではだめで、書式文字列の先頭に「@」(アットマーク)が必要でした。

3. 参考サイト

 本ページは、下記のサイトを参考にさせていただきました。
カスタム日時形式文字列 - .NET | Microsoft Learn