私は次のコードを持っています。静的メソッドを使用しています。date型オブジェクトに接尾辞を追加しようとしています。また、dateを書式設定して文字列として返す私はfolowing結果を取得していますサフィックス付きdateTimeの書式設定
var outputFormat = date.Month != nextDate.Month || isLast ? "d MMMM yyyy" : "dd";
if (isLastMonthDay)
{
formattedDate.AppendFormat("{0}{1}", GetDateSuffix(date, outputFormat), "<br><br>");
}
else
{
formattedDate.AppendFormat("{0}{1}", GetDateSuffix(date, outputFormat).TrimStart('0'), ", ");
}
private static string GetDateSuffix(DateTime date, string outputFormat)
{
string suffix;
switch (date.Day)
{
case 1:
case 21:
case 31:
suffix = "st";
break;
case 2:
case 22:
suffix = "nd";
break;
case 3:
case 23:
suffix = "rd";
break;
default:
suffix = "th";
break;
}
return outputFormat == "d MMMM yyyy" ? string.Format("{0}{1} {2:MMMM} {3}", date.Day, suffix, date.Month, date.Year) : string.Format("{0}{1}", date.Day, suffix);
}
は、私はTEH OUTPUTFORMATはMMMMのYYYY DDとして指定されている場合、日付が出力2015年4月4日にしたいが、私はMMMMが返さ取得しています。私はhttp://www.csharp-examples.net/string-format-datetime/を読んでいると、それは誰もがイムが間違っているのかを見ることができます
String.Format("{0:M MM MMM MMMM}", dt); // "3 03 Mar March" month
を使用するようにしてくださいと言いますか?
おかげ
私がコンパイルしたコードに問題を持っていない、すべてのものをそれは離れて月の名前の代わりにMMMM出力 – Paul