先に結論
タイトルの通り、月日を0埋めしないで表示したかったら.ToString("%M-%d")
を使おう
0埋めしない月・日を単独で表示したかったら.ToString("%M")
や.ToString("%d")
を使おう
※コメントで指摘ありがとうございます。
サンプルコード
title
using System;
/* // 現在日時を0埋めせず表示 */
/* System.Console.WriteLine(DateTime.Now.ToString("yyyy-%M-%d")); */
var sampleDate = new DateTime(2024, 8, 1);
// 月を0埋めせず表示
System.Console.WriteLine(sampleDate.ToString("%M"));
// 日を0埋めせず表示
System.Console.WriteLine(sampleDate.ToString("%d"));
出力結果
8
1
余談
今回仕事で初めてC#を使ったのだが、過去に使ってたJavaとフォーマット方法が異なったため、備忘録として残すことにした。Webで調べた限りだと.Month
と.Day
を結合する…みたいな結果しかなかった。0埋めしないで表示するケースはあまりないのだろうか…?
年は対象年が全て4桁だったため検証しなかった。3桁年を表示するみたいな案件に関わったら嫌だが、万が一…億が一関わることになったら調べて追記する。
(2024/08/26追記)
コメントで指摘があった通り、単独利用でない場合はM-d
のような1文字表記で問題なかった。指摘に感謝すると共に、次回以降記事を書く前の検証をもっと十分に行うようにしていく。