【Dart】西暦、和暦、年齢、干支を相互に変換

Dartで西暦、和暦、年齢、干支を相互に変換する方法についてソースコード付きでまとめました。

【Dart】西暦、和暦、年齢、干支を相互変換

Dartで、西暦、和暦、年齢、干支を相互に変換するプログラムを作成してみました。

pub.devにパッケージを公開しています
1 https://pub.dev/packages/calendar_jp
class Calendar {
  Calendar() {}
  // 年齢 → 干支
  String yearToEto(num year) {
    var arr = ["申", "酉", "戌", "亥", "子", "丑", "寅", "卯", "辰", "巳", "午", "未"];
    return arr[year % 12];
  }

  // 西暦 → 和暦
  String yearToWareki(num year, num month, num day) {
    var wareki = "エラー";

    if ((year == 2019) && (month  2018)
      wareki = "令和" + (year - 2018).toString();
    else if (year > 1988)
      wareki = "平成" + (year - 1988).toString();
    else if (year > 1925)
      wareki = "昭和" + (year - 1925).toString();
    else if (year > 1911)
      wareki = "大正" + (year - 1911).toString();
    else
      wareki = "明治" + (year - 1867).toString();

    return wareki;
  }

  // 和暦 → 西暦
  num warekiToYear(String nengo, num yearWareki) {
    if ((nengo == "令和") && (yearWareki > 0)) {
      return yearWareki + 2018;
    } else if ((nengo == "平成") && (yearWareki > 0)) {
      return yearWareki + 1988;
    } else if ((nengo == "昭和") && (yearWareki > 0) && (yearWareki  0) && (yearWareki  0) && (yearWareki 
関連記事
1 【Flutter入門】iOS、Android、Windowsアプリ開発
2 【Dart入門】基礎文法とサンプルコード集

コメント