Skip to content

BugFix Encoding Error

Yoo Hyeokjin edited this page Jun 17, 2023 · 3 revisions

BugFix - Encoding Error

Encoding Error의 원인

  • Mac, Window의 환경 차이로 인한 인코딩 차이

Mac은 UTF-8, Window는 EUC-KR을 보통 사용하기 때문에 인코딩 방식에 차이가 있어서 문자가 깨지는 현상이 발생한다.

Encoding Error의 해결방안

서로 나눠진 인코딩 방식을 통일하여 주면 된다.

.editorconfig 파일을 이용한 인코딩 통일

  • 프로젝트 내부에 .editorconfig 파일을 생성한다. (.editorconfig는 현재부터 하위 디텍토리까지 영향을 미치기 때문에 가장 상위에 위치하도록 하는 것이 좋다.)

  • 이후 다음과 같은 코드를 입력한다.

root = true

[*]
charset = utf-8

메모장을 이용해 인코딩 변경

  • 다음과 같이 인코딩을 확인할 수 있다.

image

  • 파일 - 다른 이름으로 저장 을 클릭한다면 다음과 같이 인코딩을 변경할 수 있다.

image

.editorconfig의 추가적인 내용

  • indent_style: 들여 쓰기를 'tab', 'space'중 어떤 걸로 할 것인지 설정

  • indent_size: indent_style = space일 경우, 몇 칸 할 것인지 설정

  • tab_width: indent_style = tab일 경우 width 설정 (기본적으로 indent_size 값을 따라가 거의 설정하지 않음)

  • end_of_line: 'lf', 'cr', 'crlf'중 하나로 줄바꿈 설정

LF(Line Feed, \n): 커서를 다음 줄로 이동
CR(Carriage Return, \r): 현재 커서를 줄 바꿈 없이 가장 좌측으로 이동
CRLF: 현재 커서를 가장 좌측으로 이동하고 다음 줄로 이동한다.

  • charset: 'latin1', 'utf-8', 'utf-8-bom', 'utf-16be' or 'utf-16le' 중 하나로 문자 인코딩 방식 설정 (주로 'utf-8'로 설정)

  • trim_trailing_whitespace: 'true'일 경우, 문자 앞의 공백을 제거

  • insert_final_newline: 'true'일 경우, 파일을 저장할 때 새 줄로 끝남

  • root: root 폴더의 파일에 설정하며, 'true'일 경우 .editorconfig 파일 검색을 중지

각 디렉토리에는 .editorconfig 파일이 여러 개 있을 수 있다.
보통 파일을 위쪽에서 아래쪽으로 읽으며 진행 중인 설정을 추가하고 재정의한다.
즉, 편집 중인 파일에 가장 가까운 .editorconfig의 설정이 우선합니다.
설정은 .editorconfig 파일에서 동일한 폴더(있는 경우)로 가져온 다음, 부모 폴더의 .editorconfig(있는 경우) 등에서 가져옵니다.
root=true까지 찾습니다. 즉 모든 상위 수준 .editorconfig 파일에서 이 코드베이스 부분에 적용된 설정이 없음을 뜻한다면 root=true를 입력하면 된다.

Clone this wiki locally