안녕하세요
JAVA에서 아스키코드와 유니코드의 개념 및 char를 이용한 문자, 숫자로 변환하는 방법에 대해서 알아보겠습니다
아스키코드
미국정보교환표준부호(영어: American Standard Code for Information Interchange), 또는 줄여서 ASCII( /ˈæski/, 아스키)는 영문 알파벳을 사용하는 대표적인 문자 인코딩이다. 아스키는 컴퓨터와 통신 장비를 비롯한 문자를 사용하는 많은 장치에서 사용되며, 대부분의 문자 인코딩이 아스키에 기초를 두고 있다.
아스키는 7비트 인코딩으로, 33개의 출력 불가능한 제어 문자들과 공백을 비롯한 95개의 출력 가능한 문자들로 총128개로 이루어진다. 제어 문자들은 역사적인 이유로 남아 있으며 대부분은 더 이상 사용되지 않는다. 출력 가능한 문자들은 52개의 영문 알파벳 대소문자와, 10개의 숫자, 32개의 특수 문자, 그리고 하나의 공백 문자로 이루어진다.
아스키가 널리 사용되면서 다양한 아스키 기반의 확장 인코딩들이 등장했으며, 이들을 묶어서 아스키라고 부르기도 한다. 대표적으로 7비트 인코딩을 유지한 ISO/IEC 646과, 원래 아스키 코드 앞에 비트 0을 넣어 8비트 인코딩을 만든 IBM 코드 페이지와 ISO 8859가 있다. 이 인코딩들은 언어군에 따라 같은 숫자에 서로 다른 문자가 배당된 경우가 많다.
출처 : 위키백과
간단하게 말하면 컴퓨터는 문자를 문자로 받아들이는 것이 아닌 숫자로 받아들입니다
문자를 숫자로 표현한 것을 아스키코드라고 합니다
하단은 아스키코드 표입니다
유니코드
유니코드(영어: Unicode)는 전 세계의 모든 문자를 컴퓨터에서 일관되게 표현하고 다룰 수 있도록 설계된 산업 표준이며, 유니코드 협회(Unicode Consortium)가 제정한다. 또한 이 표준에는 ISO 10646 문자 집합, 문자 인코딩, 문자 정보 데이터베이스, 문자들을 다루기 위한 알고리즘 등을 포함하고 있다.
또한 유니코드의 목적은 현존하는 문자 인코딩 방법들을 모두 유니코드로 교체하려는 것이다. 기존의 인코딩들은 그 규모나 범위 면에서 한정되어 있고, 다국어 환경에서는 서로 호환되지 않는 문제점이 있었다. 유니코드가 다양한 문자 집합들을 통합하는 데 성공하면서 유니코드는 컴퓨터 소프트웨어의 국제화와 지역화에 널리 사용되게 되었으며, 비교적 최근의 기술인 XML, 자바, 그리고 최신 운영 체제 등에서도 지원하고 있다.
ko.wikipedia.org/wiki/%EC%9C%A0%EB%8B%88%EC%BD%94%EB%93%9C
출처 : 위키백과
아스키코드는 대부분의 컴퓨터에서 범용적으로 사용하느 코드라면 유니코드는 최근 기술인 XML, 자바, 최신 운영체제에서 사용되는 코드라 할 수 있습니다
여기까지 아스키코드와 유니코드의 설명을 마쳤습니다
이어서 유니코드 문자 -> 숫자로 변환, 숫자 -> 문자로 변환하는 방법에 대해서 알아보겠습니다
public class Ascii {
public static void main(String[] args) {
System.out.println("유니코드 숫자 : " + ((int) "A".charAt(0)));
System.out.print("유니코드 문자 : " + ((char) 65));
}
}
위의 방법을 사용해서 간단하게 문자, 숫자로 변환할 수 있습니다
이 방법을 응용하면 다양한 문제들도 간단하게 풀 수 있습니다 ㅎ
여기까지 유니코드의 문자, 숫자 변환 방법에 대해서 알아봤습니다
혹시라도 설명에 있어서 틀린 부분이 있다면 댓글 남겨주시면 감사하겠습니다
이 글이 JAVA 프로그래밍에 있어서 참고가 되셨으면 좋겠습니다
'프로그래밍 > JAVA' 카테고리의 다른 글
[JAVA] 여러 줄 한 번에 주석달기 단축키 (0) | 2021.04.24 |
---|---|
[JAVA] charAt에 대해서 알아봅시다 (2) | 2021.04.24 |
[JAVA/이클립스] 에러 : An error has occurred. See the log file (0) | 2021.04.23 |
BufferedWriter과 System.out.print의 차이점 (2) | 2021.04.19 |
Scanner와 BufferedReader의 차이점 (0) | 2021.04.17 |