memostack
article thumbnail
문자 인코딩 (charater encoding), 글자 깨지는 이유
ETC 2021. 3. 4. 21:57

문자 인코딩 (charater encoding) 컴퓨터는 Hello, World와 같이 인간의 언어를 이해할 수 없음. 컴퓨터가 이해할 수 있는 언어는 2진수뿐이다보니, 위와 같은 인간의 언어를 이해 할 수 있도록 문자를 2진수로 변환하는 작업이 필요함 2진수와 문자를 1대1로 대응하는 규칙을 통해 문자를 처리하는데, 이러한 대응 규칙에는 ASCII, EUC-KR, UTF-8, UTF-16, UTF-32 등 여러개의 규칙이 존재함 예를들어, 아스키코드에서는 2진수 01000001 (10진수로 65)는 문자 A로 표현 됨 JAVA 예시 코드 int num = 65; System.out.println(Integer.toBinaryString(num)); // 2진수 System.out.println((cha..

article thumbnail
Java - 문자 자료형과 아스키코드, 유니코드(UTF-8, UTF-16)
Language/JAVA 2021. 2. 2. 20:59

char 문자 자료형 char 타입은 데이터를 저장할 때 비트의 조합으로 저장이 된다. 문자에는 각각 코드 값이 부여되어 있다. 예를 들어서, A는 65, B는 66... 아스키코드와 유니코드 문자를 표현할 때 아스키코드와 유니코드를 사용한다. 아스키(ASCII) 코드 1바이트(8bit)로 영문자, 숫자, 특수문자 등을 표현함 유니코드 영문자, 숫자, 특수문자 뿐만 아니라 한글, 한자와 같이 복잡한 언어를 표현한다. 대표적으로는 UTF-8, UTF-16이 있다 public class Main { public static void main(String[] args) { // 아스키 코드 & 유니코드 System.out.println((char) 65); // A (아스키코드) System.out.print..