ようへいの日々精進XP

よかろうもん

今年って平成何年だっけを解決する為に Golang でコマンド作ったぜ

今年って平成何年だっけ?

nen.go

年末調整を書いていて「今年って平成何年だっけ?」とググっていたら、以下のように Golang で書いてみたとです。

名付けて nen.go(ねんごー)(年号)でごわす。

package main

import (
    "flag"
    "fmt"
    "strconv"
)

func to_wareki(year string) (nen int) {
    var i int
    i, _ = strconv.Atoi(year[2:4])
    nen = i + 12
    return
}

func to_seireki(nen int) (year int) {
    year = nen + 1988
    return
}

var (
    w = flag.Int("w", 0, "和暦(平成) を西暦に変換. 和暦を入力して下さい.")
    s = flag.String("s", "", "西暦を和暦(平成)に変換. 西暦を入力して下さい.")
)

func main() {

    flag.Parse()
    // fmt.Println(*w)
    // fmt.Println(*s)

    if *s != "" && *w == 0 {
        fmt.Println(to_wareki(*s))
    } else if *w != 0 && *s == "" {
        fmt.Println(to_seireki(*w))
    } else if *w == 0 && *s == "" {
        fmt.Println("和暦(-w)又は西暦(-s)を入力して下さい.")
    }
}

ビルドなんかしちゃったりして...

bash-3.2$ go build nen.go

ヘルプもあるよ。

bash-3.2$ ./nen --help
Usage of ./nen:
  -s string
        西暦を和暦(平成)に変換. 西暦を入力して下さい.
  -w int
        和暦(平成) を西暦に変換. 和暦を入力して下さい.

平成何年かがわからない

bash-3.2$ ./nen -s 2016
28

-s は西暦の s でごわす。

西暦何年?

あまり個人的なニーズは無いけど、今年は西暦何年かを確認。

bash-3.2$ ./nen -w 28
2016

-w は和暦の w じゃっど。

ということで...

平成何年かが解らなくなっても、コマンド叩けばイイ感じ。