투케이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. 사용이유 - 데이터 통신 시 한글 데이터를 올바르게 표시해주기 위함입니다

/* =========================== */

반응형
Comments