package main
import (
"fmt"
"io"
"os"
"golang.org/x/text/encoding/korean"
"golang.org/x/text/transform"
)
func main() {
if len(os.Args) < 2 {
// 표준 입력(stdin)에서 euc-kr로 인코딩된 데이터를 읽습니다.
eucKrReader := transform.NewReader(os.Stdin, korean.EUCKR.NewDecoder())
// euc-krReader에서 읽은 데이터를 utf-8로 변환하여 표준 출력(stdout)에 씁니다.
_, err := io.Copy(os.Stdout, eucKrReader)
if err != nil {
fmt.Fprintf(os.Stderr, "Error: %v\n", err)
os.Exit(1)
}
} else if len(os.Args) == 2 && os.Args[1] == "-kr" {
// 표준 출력(stdout)을 EUC-KR 인코더로 래핑합니다.
eucKrWriter := transform.NewWriter(os.Stdout, korean.EUCKR.NewEncoder())
// 표준 입력(stdin)에서 읽은 UTF-8 데이터를 EUC-KR로 변환하여 씁니다.
_, err := io.Copy(eucKrWriter, os.Stdin)
if err != nil {
fmt.Fprintf(os.Stderr, "Error: %v\n", err)
os.Exit(1)
}
} else {
print("Chobocho's EUC-KR to UTF-8 Converter V0.2\n" +
"Usage: utf.exe < euc_kr_file.txt\n" +
" utf.exe -kr > euc_kr_file.txt\n")
}
}