Java Scanner (사용자입력) 한글깨짐 해결 방법?

Java Scanner (사용자입력) 한글깨짐 해결 방법?

QA

Java Scanner (사용자입력) 한글깨짐 해결 방법?

답변 2

본문

1. C:\Users\사용자명\Hz.java 파일 생성.

import java.util.Scanner; // import the Scanner class 

class Hz {
  public static void main(String[] args) {

    Scanner myObj = new Scanner(System.in, "UTF-8"); // 이 부분이 말썽 ?
    String userSite;    

    System.out.println("사이트 입력하세요."); 
    userSite = myObj.nextLine();   
       
    System.out.println("사이트명: " + userSite);        
  }
}

 

2.

CMD모드에서 아래 명령어로 파일 실행.

C:\Users\aspire>java -Dfile.encoding=UTF-8 Hz.java

 

3.

홈짱닷컴 Homzzang.com 입력했더니,

???? Homzzang.com 으로 찍혀 나와요.

즉, 한글 입력 부분이 깨져 나옵니다.

한글도 제대로 나오게 하려면 어떻게?

 

 

이 질문에 댓글 쓰기 :

답변 2

Linux의 시스템한글이 Euc-kr인것같아보입니다.

"EUC-KR" 설정해주니까, 한글 제대로 나오네요.

PS. 그런데, 왜 UTF-8은 깨지는 걸까요? ㅡㅡ;

파일의 저장방식이 Euc-kr로 된것도 체크해보세요

OS의 인코딩
파일의 저장방식 인코딩
파일의 text 방식 인코딩
db 의 저장소 인코딩
db의 텍스트 인코딩

다 다르게 구성이 가능합니다.
한번 헛갈리기 시작하면 폭망에 가깝죠
그래서 처음부터 utf-8로 하면되는데
아무래도 위의 소스는 2000년 초중반로직이 아닐까 싶네요

2010년 되기 3-4년부터는 utf-8로 통일되기 시작했던것으로 기억합니다.(참고만하세요)

답변을 작성하시기 전에 로그인 해주세요.
QA 내용 검색
질문등록
전체 61
© SIRSOFT
현재 페이지 제일 처음으로