Go で CLI インターフェイス プログラムを作成しています。私のプログラムでは、ユーザーが引数としてファイル名を入力する必要があります。以下は、ユーザーが引数を入力しない状況を処理するために私が書いたコードです。しかし、パニックになり、「インデックスが範囲外です」というエラーが発生します。これをどのように処理すればよいですか?
package main
import (
"encoding/hex"
"fmt"
"io/ioutil"
"log"
"os"
)
func main() {
if len(os.Args) == 0 {
fmt.Println("usage: gohex <filename>")
os.Exit(1)
} else {
filename := os.Args[1]
data, err := ioutil.ReadFile(filename)
if err != nil {
log.Fatal(err)
}
fmt.Println(hex.Dump(data))
}
}