buffer_base64_decode_ext 함수 설명
buffer_base64_decode_ext
함수는 base64로 인코딩된 문자열을 버퍼로 디코딩하는 기능을 제공합니다. 이 함수는 buffer_base64_decode
와는 달리, 버퍼를 자동으로 생성하지 않으며, 사용자가 미리 생성한 버퍼를 사용해야 합니다. 이 함수는 주로 데이터의 복원이나 전송된 데이터를 처리할 때 유용합니다.
함수 구문
buffer_base64_decode_ext(buffer, string, offset);
매개변수 설명
매개변수 | 타입 | 설명 |
---|---|---|
buffer | Buffer | 디코딩된 문자열을 저장할 버퍼입니다. |
string | String | 디코딩할 base64 인코딩 문자열입니다. |
offset | Real | 버퍼 내에서 문자열을 디코딩할 위치(바이트)입니다. |
반환값
- N/A: 반환값이 없습니다.
활용 예제
예제 1: INI 파일에서 문자열 읽기 및 디코딩
buff = buffer_create(16384, buffer_grow, 2);
ini_open("Save.ini");
var _str = ini_read_string("Save", "Slot1", "");
buffer_base64_decode_ext(buff, _str, 0);
ini_close();
이 코드는 16384 바이트 크기의 버퍼를 생성하고, "Save.ini" 파일을 열어 "Slot1"에서 문자열을 읽습니다. 읽은 문자열은 base64로 인코딩되어 있으며, 이를 디코딩하여 생성한 버퍼에 저장합니다.
예제 2: 사용자 입력을 통한 디코딩
var user_input = "U29tZSBkYXRh"; // base64로 인코딩된 문자열
var buff = buffer_create(1024, buffer_grow, 1);
buffer_base64_decode_ext(buff, user_input, 0);
이 예제에서는 사용자가 입력한 base64 문자열을 디코딩하여 1024 바이트 크기의 버퍼에 저장합니다.
예제 3: 파일에서 읽은 데이터 디코딩
var file = file_text_open_read("data.txt");
var encoded_string = file_text_read_string(file);
file_text_close(file);
var buff = buffer_create(2048, buffer_grow, 1);
buffer_base64_decode_ext(buff, encoded_string, 0);
이 코드는 "data.txt" 파일에서 base64로 인코딩된 문자열을 읽고, 이를 디코딩하여 2048 바이트 크기의 버퍼에 저장합니다.
예제 4: 네트워크 데이터 디코딩
var network_data = "SGVsbG8gd29ybGQ="; // base64로 인코딩된 문자열
var buff = buffer_create(512, buffer_grow, 1);
buffer_base64_decode_ext(buff, network_data, 0);
이 예제는 네트워크를 통해 수신한 base64 인코딩 문자열을 디코딩하여 512 바이트 크기의 버퍼에 저장합니다.