[Java] 인코딩 (Encording)

Updated:

  • 컴퓨터의 입출력 Stream 과정 : [컴퓨터 ‘h’ 입력 → 운영체제(OS) 전달 → 메모장에 ‘h’출력]
  • 사용자가 입력한 h 문자는 컴퓨터가 이해할 수 있도록 바이트단위로 변환된 뒤 전달 → 사용자가 인식할 수 있도록 다시 문자값으로 변환하여 출력 하게 된다.
    • ⇒ InputStream / OutputStream 동안에 컴퓨터들에게는 바이트 단위로 문자를 인식
    • ⇒ 바이트단위→문자형, 문자형 → 바이트단위로 바꾸는 과정 : 인코딩
  • 인코딩의 대표적 방식으로는 ASCII, Unicode, UTF-8 등이 있다.

ASCII 코드


  • 자바에서 문자를 바이트 코드로 인코딩할 때 사용하는 방식
  • 8bit로 2의 7승까지 표현 가능
//byte 형식으로 문자 받기
byte byte1 = 'a';  //출력 : 97
byte byte2 = 'A';  //출력 : 65
byte byte3 = '9';  //출력 57
//byte로 숫자를 받으면 숫자가 아니라 문자로 인식하여 코드표에 해당되는 값으로 저장.

//문자를 byte로 인코딩하기
String Text = "Hello World";
byte[] byteText = Text.getBytes(); // 문자열을 바이트코드로 변환시켜서 배열 하나하나에 저장

//byte를 문자로 디코딩하기
String byteToText = new String(byteText);

참고


  • 자바의 정석

Tags:

Categories:

Updated:

Leave a comment