선수로 산다, 때론 좋은 코치로
[golang] 인코딩 변환하기(euc-kr > utf-8) 본문
[golang] 인코딩 변환하기(euc-kr > utf-8)
우리은행 거래내역 엑셀파일을 로그스태시에 csv 파일로 입력하기 진행 중.
1번째 - 엑셀파일 읽어들이기
2번째 - 인코딩 변환하기
윈도우의 엑셀은 euc-kr 이라는 인코딩으로 파일을 저장한다. 윈도우에서 기본적으로 한글을 표현하는 인코딩 방식이다. 윈도우에서 한글을 사용할 때는 전혀 문제가 되지 않지만 다른 프로그램을 사용할 때는 문제가 될 수 있다. 엘라스틱서치는 기본 인코딩이 utf-8 이므로 윈도우에서 사용하는 한글을 그대로 입력하면 한글이 깨져서 원하는 데이터를 확인할 수가 없다.
엘라스틱서치에서 활용하기 위해서는 엑셀파일에서 읽어들인 한글의 인코딩을 변환해야 한다.
변환관련 슬라이드 - https://www.slideshare.net/suapapa/go-character-encoding
Third party packages
go-iconv: cgo wrapper of iconv library
go-charset:
cp949:
package text 사용 - golang.org/x/text - https://godoc.org/golang.org/x/text
encoding/korean Package korean provides Korean encodings such as EUC-KR.
변환관련 자료들
Converting files to UTF-8 - https://docs.moodle.org/23/en/Converting_files_to_UTF-8
- 4가지 방법 제공
Convert Files To UTF-8 Encoding (Bulk) - https://gallery.technet.microsoft.com/scriptcenter/Convert-Files-To-UTF-8-5c58db5e
- Microsoft Powershell 이용 방법
Powshell 이용 - Get-Content, Set-Content, out-file
- Get-Content .\과거거래내역조회2017.csv | Set-Content -Encoding utf8 과거거래내역조회2017u.csv
- Get-Content .\과거거래내역조회2017.csv | out-file -Encoding utf8 과거거래내역조회2017u.csv
- UTF-8 with BOM 으로 변환됨
Powershell Script 이용 - Convert Files To UTF-8 Encoding (Bulk)
- https://gallery.technet.microsoft.com/scriptcenter/Convert-Files-To-UTF-8-5c58db5e
- UTF-8 with BOM 으로 변환됨
'개발 관련 > go' 카테고리의 다른 글
Windows10 WSL2 docker golang debug in vscode (0) | 2020.09.08 |
---|---|
[golang] 숫자 야구 프로그램 (0) | 2020.09.07 |
[golang] 엘라스틱서치로 우리은행 거래내역 분석하기-엑셀파일 읽기 (0) | 2018.02.19 |
[golang] A Tour of Go - 61 연습 문제 (0) | 2018.02.13 |
[golang] A Tour of Go - 60 연습 문제 (0) | 2018.02.13 |