Найти в Дзене
DEBAGanov

Java 1157. Какой класс появился в Java 8 для кодирования/декодирования данных?

В Java 8 был добавлен класс Base64 в пакет java.util для кодирования и декодирования данных в формате Base64. Этот класс содержит два статических класса - Encoder для кодирования данных и Decoder для декодирования данных. Для использования необходимо импортировать класс Base64 использованием директивы импорта: import java.util.Base64;.

Пример кодирования и декодирования данных в Base64 в Java 8 с использованием класса Base64:

import java.util.Base64;

public class Main {
public static void main(String[] args) {
String originalString = "Hello, world!";

// Encoding a string to Base64
String encodedString = Base64.getEncoder().encodeToString(originalString.getBytes());
System.out.println("Encoded string: " + encodedString);

// Decoding a Base64 string
byte[] decodedBytes = Base64.getDecoder().decode(encodedString);
String decodedString = new String(decodedBytes);
System.out.println("Decoded string: " + decodedString);
}
}

Вывод программы:

Encoded string: SGVsbG8sIHdvcmxkIQ==
Decoded string: Hello, world!

Например, чтобы закодировать массив байтов в строку Base64, можно использовать следующий код:

byte[] byteArray = {1, 2, 3};
Base64.Encoder encoder = Base64.getEncoder();
String encodedString = encoder.encodeToString(byteArray);

А чтобы декодировать строку Base64 обратно в массив байтов, можно использовать следующий код:

Base64.Decoder decoder = Base64.getDecoder();
byte[] decodedByteArray = decoder.decode(encodedString);

Для этих операций также можно использовать статические методы класса java.util.Base64, например, для кодирования:

byte[] byteArray = {1, 2, 3};
String encodedString = Base64.getEncoder().encodeToString(byteArray);

и для декодирования:

byte[] decodedByteArray = Base64.getDecoder().decode(encodedString);

1606 вопрос-ответ по Java: https://github.com/DEBAGanov/interview_questions

Tелеграмм канал: https://t.me/DEBAGanov

Мое резюме: https://github.com/DEBAGanov