「C Sharpの基礎 - CSVファイル」の版間の差分

ナビゲーションに移動 検索に移動
552行目: 552行目:
  public class Person
  public class Person
  {
  {
     [Name("ID")]
     [Name("社員番号")]
     public int Id { get; set; }
     public int Id { get; set; }
   
   
     [Name("NAME")]
     [Name("氏名")]
     public string Name { get; set; }
     public string Name { get; set; }
   
   
     [Name("BIRTHDAY")]
     [Name("生年月日")]
     [Format("yyy-MM-dd")]
     [Format("yyyy年MM月dd日")]
     public DateTime BirthDate { get; set; }
     public DateTime BirthDate { get; set; }
  }
  }
573行目: 573行目:
       var records = new List<Person>
       var records = new List<Person>
       {
       {
           new Person { Id = 1, Name = "John Doe", BirthDate = new DateTime(1980, 1, 1) },
           new Person { Id = 1, Name = "山田 太郎", BirthDate = new DateTime(1980, 1, 1) },
           new Person { Id = 2, Name = "Jane Smith", BirthDate = new DateTime(1985, 5, 15) },
           new Person { Id = 2, Name = "佐藤 花子", BirthDate = new DateTime(1985, 5, 15) },
           new Person { Id = 3, Name = "Bob Johnson", BirthDate = new DateTime(1990, 12, 31) }
           new Person { Id = 3, Name = "鈴木 一郎", BirthDate = new DateTime(1990, 12, 31) }
       };
       };
   
   
587行目: 587行目:
         using (var csv = new CsvWriter(writer, config))
         using (var csv = new CsvWriter(writer, config))
         {
         {
          // DateTimeコンバータを追加して、日付を日本語形式で出力
           csv.Context.TypeConverterCache.AddConverter<DateTime>(new CustomDateTimeConverter());
           csv.Context.TypeConverterCache.AddConverter<DateTime>(new CustomDateTimeConverter());
           csv.WriteRecords(records);
           csv.WriteRecords(records);
593行目: 594行目:
  }
  }
   
   
// DateTimeConverterを拡張して、日付を"yyyy年MM月dd日"形式で出力するカスタムコンバータを定義
  public class CustomDateTimeConverter : CsvHelper.TypeConversion.DateTimeConverter
  public class CustomDateTimeConverter : CsvHelper.TypeConversion.DateTimeConverter
  {
  {
599行目: 601行目:
       if (value is DateTime dateTime)
       if (value is DateTime dateTime)
       {
       {
           return dateTime.ToString("yyyy-MM-dd");
           return dateTime.ToString("yyyy年MM月dd日");
       }
       }
   
   

案内メニュー