JAVA 질문있습니다.

조회수 2103회
package Ex;

import java.io.*;

public class fre {

    public static void main(String[] args) throws IOException {
        FileInputStream fi = null;
        InputStreamReader in = null;
//      fi = new FileInputStream("fileEx.txt");  // fileEx.txt ANSI로 저장
//      in = new InputStreamReader(fi, "MS949"); 

                fi = new FileInputStream("fileEx1.txt");// fileEx1.txt UTF-8로 저장
        in = new InputStreamReader(fi, "UTF-8"); 
        int ch;

        while((ch = fi.read()) !=-1 ){
            System.out.print((char)ch); 
        }
        fi.close();
    }
}

파일입출력을 하고 있습니다. 파일에 입력된 텍스트를 콘솔창에 출력하고 싶었는데 자꾸 외계어만 뜨네요.

fileEx.txt (ANSI로 저장)

파일 리더 파일 라이터
fileReader fileWriter
Java Test

fileEx.txt 는 위와 같이 저장하고 콘솔창에 출력하니

Æ??? ¸®´? Æ??? ¶?????
fileReader fileWriter
Java Test

위와 같이 출력이 되고요. 제가 인코딩체계에 대해 잘못알고 있는 것 같아서 그나마 쉬운? uft-8형식으로 해봤습니다.

fileEx1.txt (UTF-8로 저장)

자바 연습 "utf-8"형식

fileEx1.txt 는 위와 같이 저장하고 콘솔창에 출력하니

??¿????°? ??°??? "utf-8"??????

라 뜨네요. 저는 틀린 게 없다고 보여지는데 왜 한글출력이 안되는지 모르겠습니다. ㅠㅠ

2 답변

답변을 하려면 로그인이 필요합니다.

Hashcode는 개발자들을 위한 무료 QnA 사이트입니다. 계정을 생성하셔야만 답변을 작성하실 수 있습니다.

(ಠ_ಠ)
(ಠ‿ಠ)

ᕕ( ᐛ )ᕗ
로그인이 필요합니다

Hashcode는 개발자들을 위한 무료 QnA사이트 입니다. 계정을 생성하셔야만 글을 작성하실 수 있습니다.