Notice
Recent Posts
Recent Comments
Link
투케이2K
126. (java/자바) 유니코드 UTF-16LE 를 사용해 한글 데이터를 바이트(byte)로 변환 및 문자열(string) 변환 실시 본문
Java
126. (java/자바) 유니코드 UTF-16LE 를 사용해 한글 데이터를 바이트(byte)로 변환 및 문자열(string) 변환 실시
투케이2K 2021. 1. 20. 07:39/* =========================== */
[ 개발 환경 설정 ]
개발 툴 : Eclipse
개발 언어 : Java
/* =========================== */
/* =========================== */
[소스 코드]
package AI3;
import java.util.Arrays;
public class MainActivity28 {
public static void main(String[] args) {
// TODO Auto-generated method stub
System.out.println("[유니코드 UTF-16LE 를 사용해 한글 데이터를 바이트(byte)로 변환 및 문자열(string) 변환 실시]");
/*[설 명]
* 1. 영문, 숫자는 바이트로 변환 시 1바이트 크기를 차지합니다
* 2. 한글을 바이트로 변환 시 2바이트 크기를 차지합니다
* 3. EX - [hello] 를 바이트로 변환시 5바이트 크기 / [투케이] 를 바이트로 변환 시 6바이트 크기를 가집니다
* 4. 사용이유 - 데이터 통신 시 한글 데이터를 올바르게 표시해주기 위함입니다
*/
String ko_data = "투케이";
String en_data = "hello";
System.out.println("한글 원본 : "+ko_data);
System.out.println("영문 원본 : "+en_data);
System.out.println("");
try {
//string 데이터를 byte로 변환 실시
byte ko_arr[] = ko_data.getBytes("UTF-16LE");
System.out.println("한글 바이트 : "+Arrays.toString(ko_arr));
byte en_arr[] = en_data.getBytes();
System.out.println("영문 바이트 : "+Arrays.toString(en_arr));
System.out.println("");
//byte 데이터를 string로 변환 실시
System.out.println("한글 문자열 : "+new String(ko_arr, 0, ko_arr.length, "UTF-16LE"));
System.out.println("영문 문자열 : "+new String(en_arr));
}
catch(Exception e) {
System.out.println(e.getMessage());
}
}//메인 종료
}//클래스 종료
/* =========================== */
[결과 출력]
[유니코드 UTF-16LE 를 사용해 한글 데이터를 바이트(byte)로 변환 및 문자열(string) 변환 실시]
한글 원본 : 투케이
영문 원본 : hello
한글 바이트 : [44, -46, 0, -49, 116, -57]
영문 바이트 : [104, 101, 108, 108, 111]
한글 문자열 : 투케이
영문 문자열 : hello
/* =========================== */
/* =========================== */
[요약 설명]
* 1. 영문, 숫자는 바이트로 변환 시 1바이트 크기를 차지합니다
* 2. 한글을 바이트로 변환 시 2바이트 크기를 차지합니다
* 3. EX - [hello] 를 바이트로 변환시 5바이트 크기 / [투케이] 를 바이트로 변환 시 6바이트 크기를 가집니다
* 4. 사용이유 - 데이터 통신 시 한글 데이터를 올바르게 표시해주기 위함입니다
/* =========================== */
반응형
'Java' 카테고리의 다른 글
128. (java/자바) Arrays.toString 리스트 데이터 형식 문자열 파싱 실시 (0) | 2021.01.20 |
---|---|
127. (java/자바) 바이트(byte)값과 문자열(string)간 데이터 변환 실시 - MS949,UTF-8,UTF-16,UTF-16LE,EUC-KR,ISO-8859-1 (0) | 2021.01.20 |
125. (java/자바) 내부클래스(inner class) 개념 설명 (0) | 2021.01.15 |
124. (java/자바) 패키지 Package 개념 설명 (0) | 2021.01.15 |
123. (java/자바) StringToKenizer 토큰 구분자를 사용해 문자열 분리 실시 (0) | 2021.01.15 |
Comments