欧美一区二区三区,国内熟女精品熟女A片视频小说,日本av网,小鲜肉男男GAY做受XXX网站

java 和c base64編碼

榮姿康1年前8瀏覽0評論

Base64編碼是一種把二進制數據轉換為可打印字符的編碼方式,Java和C都有現成的函數庫可以實現Base64編碼和解碼。

在Java中,可以使用java.util.Base64類的靜態方法進行編碼和解碼,如下:

//編碼
byte[] encodedBytes = Base64.getEncoder().encode(inputBytes);
String encodedString = new String(encodedBytes);
//解碼
byte[] decodedBytes = Base64.getDecoder().decode(encodedBytes);

而在C語言中,可以使用OpenSSL庫中的函數進行Base64編碼和解碼,如下:

#include <openssl/bio.h>
#include <openssl/evp.h>
#include <openssl/buffer.h>
//編碼
int base64encode(char * input, int length, char* output) {
BIO *bio, *b64;
BUF_MEM *bufferPtr;
b64 = BIO_new(BIO_f_base64());
bio = BIO_new(BIO_s_mem());
bio = BIO_push(b64, bio);
BIO_write(bio, input, length);
BIO_flush(bio);
BIO_get_mem_ptr(bio, &bufferPtr);
memcpy(output, bufferPtr->data, bufferPtr->length);
output[bufferPtr->length] = 0;
BIO_free_all(bio);
return bufferPtr->length;
}
//解碼
int base64decode(char* input, int length, char* output) {
BIO *bio, *b64;
b64 = BIO_new(BIO_f_base64());
bio = BIO_new_mem_buf(input, length);
bio = BIO_push(b64, bio);
BIO_read(bio, output, length);
output[length] = '\0';
BIO_free_all(bio);
return length;
}

通過以上代碼,可以實現在Java和C語言中進行Base64編碼和解碼的功能。