foxpacking

Programming Lessons

Java 언어 Korean

Java 총 정리[9. Eclipse 한글 깨짐 해결]

한글 깨짐 해결

여러가지 내용을 배우면서 실습을 진행하거나 스스로 프로그래밍을 하시고 있으실 거라고 생각이 됩니다. 하지만 소스나 코딩이 아닌 곳에서 문제가 발생되어서 힘들어 하시고 프로그램을 짜는 것에 멀어지는 경우가 종종 있습니다.

그럼 소스와 코딩 문제가 아닌 문제를 어떻게 해결을 하면 될까요? 저 또한 이런 문제로 인해서 공부를 하고 있을 때나 아니면 개발자로 있을 때 많이 힘들었던 것 같습니다.

상황마다 여러가지 문제가 발생을 합니다. 당연히 스스로 해결을 해야 하며 이것이 소스와 코딩의 문제인지 설정에 문제인지 답을 쉽게 찾지 못하니 어렵습니다.

설정에 문제가 확실하다면 인터넷을 통해 검색하고 찾으시면 분명 도움이 되실 겁니다.

이 글에서는 Java 공부를 할 때 처음에 가장 많이 나오는 문제를 고치기 위한 설정을 담았습니다. 끝까지 읽으신다면 이 문제는 쉽게 해결을 하실 겁니다.

처음에 모두가 겪어서 힘들 수 있는 한글 깨짐 현상입니다. 한글을 입력을 받은 내용을 출력을 하거나 출력문을 이용해서 한글을 출력을 할 때 한글이 이상한 글자로 깨져서 나오는 현상입니다. 이 글을 천천히 따라하시면 한글 깨짐을 해결을 할 수 있습니다.

한글 깨짐 현상

아래 소스와 같이 출력에 한글을 넣어서 출력을 하거나 또는 입력을 받을 때 한글을 받은 변수를 출력을 하면 한글이 깨지는 현상을 한글 깨짐 현상이라고 합니다.

    
import java.util.Scanner;

public class KoreanTest {

	public static void main(String[] args) {
		// TODO Auto-generated method stub
	// "안녕하세요"문자열 출력
		System.out.println("안녕하세요."); 
	// 입력을 하기 위해 Scanner 객체 생성
		Scanner sc = new Scanner(System.in);
	// 문자열 입력을 받는 명령을 내리고 입력 받은 문자열 을 문자열 변수 str에 대입
		String str = sc.next();
	// 문자열 변수 str 출력
		System.out.println(str); 
	}
}
    
한글 깨짐 사진 1

결과

한글 깨짐 사진 2

한글 깨짐 수정

Eclipse의 설정을 이용해서 한글 깨짐 현상을 수정을 하겠습니다.

  1. Package Explore를 엽니다.
  2. 현재 프로젝트를 클릭을 합니다.
  3. 오른쪽 버튼을 누르면 창이 나옵니다.
  4. Run As로 마우스를 옮기면 Run Configurations..를 클릭을 합니다.
  5. Main부터 여러 탭이 있는데 여기서 Common 탭을 클릭합니다.
  6. Encoding에 Other를 클릭하고 MS949를 입력합니다.
  7. 그 이후에 하단에 보면 Apply를 클릭하고 Run을 실행합니다.
  8. 실행 결과를 확인을 하면 한글이 잘 표현 되는 것을 알 수 있습니다.
한글 깨짐 사진 3
한글 깨짐 사진 4
한글 깨짐 사진 5
한글 깨짐 사진 6

UTF-8과 MS949(CP949)란?

UTF-8

Unicode Transformation format -8bit가 풀 네임 입니다.

코드 페이지는 65001로, 표현 가능한 길이는 최대 6바이트지만 다른 인코딩 호환을 위해 4바이트만 사용 아스키 코드와 호환이 되며 가변 길이를 사용해도 비트가 남는다.

인터넷에서 가장 많이 쓰는 인코딩 이고 별다른 변환 처리 없이 그대로 사용 가능 하고 크로스 플랫폼 호환성도 뛰어나다.

MS949(CP949)

마이크로소프트가 제정한 규격으로 한글 Windows 98에 처음 사용 네이티브 프로그래밍 언어를 이용해 UTF-8로 한글 출력을 하면 깨져 나온다.

EUC-KR과 같지 않다. 가나다순을 차례대로 2바이트로 할당 받아 사용을 한다.

※ 네이티브하게 프로그래밍 공부를 하려면 MS949또는 CP949를 사용하고 웹을 구현을 할 때는 UTF-8을 사용하는 걸 추천 드립니다.

<참조 : 나무 위키>

Dolphin

About Author

Leave a comment

이메일 주소는 공개되지 않습니다. 필수 필드는 *로 표시됩니다

You may also like

Korean Programming 기초

IT 개발자 VS 프로축구선수 비교?

IT 개발자와 프로축구선수의 같은 점과 다른 점? 프로그래밍 공부를 하시면서 개발자로 취업을 하려고 하는데 과연 취업을 할 수 있을까? IT
Korean 클라우드

AWS 로그인 불가능, AWS고객 센터 이메일 문의 결과는?

AWS 고객센터 이메일 문의 솔직후기 AWS를 사용하기 위해 로그인을 하는 경우 이메일로 코드 번호를 보내지만 이메일로 받을 수 없는 상황이거나