和暦の使い方を聞かれたので、まとめておきます。
-------------------------------------------------------
using System;
class Test
{
public static void Main()
{
// カルチャとして日本を設定
System.Globalization.CultureInfo jp = new System.Globalization.CultureInfo("ja-JP");
Console.WriteLine(DateTime.Now.ToString("gg yy年MM月dd日 dddd tt hh:mm:ss", jp));
// 和暦カレンダーの設定
jp.DateTimeFormat.Calendar = new System.Globalization.JapaneseCalendar();
Console.WriteLine(DateTime.Now.ToString("gg yy年MM月dd日 dddd tt hh:mm:ss", jp));
// 書式指定のみの場合
Console.WriteLine("{0:gg yy年MM月dd日 dddd tt hh:mm:ss}", DateTime.Now);
}
}
-------------------------------------------------------
実行結果がどうなるかは、試してみてください。
最後のパターンでカルチャが指定できるといいのに。。。と思ったり(^^;
追記:
和暦をアルファベット1文字で表すのにどういう方法をとるか、ということに対する私なりの回答です。
-------------------------------------------------------
using System;
class Test
{
enum gengo{ M=1, T, S, H };
public static void Main()
{
System.Globalization.CultureInfo jp
= new System.Globalization.CultureInfo("ja-JP");
jp.DateTimeFormat.Calendar = new System.Globalization.JapaneseCalendar();
DateTime day = DateTime.Today;
string wReki = Enum.GetName(typeof(gengo), jp.DateTimeFormat.Calendar.GetEra(day));
Console.WriteLine(wReki+day.ToString("yy/MM/dd", jp));
}
}-------------------------------------------------------
GetEra使って、enum使って。。。それもenumではわざわざ1から始まるようにしてみたり、とちょっと工夫してます。
あおい情報システム株式会社 小野修司(どっとねっとふぁん)