Industriële fabricage
Industrieel internet der dingen | Industriële materialen | Onderhoud en reparatie van apparatuur | Industriële programmering |
home  MfgRobots >> Industriële fabricage >  >> Industrial programming >> Java

Java 8 Base64: Eenvoudige, URL en MIME Encoding

Met Java 8 heeft Base64 eindelijk de aandacht gekregen die het verdient. Java 8 beschikt nu over ingebouwde encoder en decoder voor Base64-encoding. In Java 8 kunnen we drie typen Base64-encoding gebruiken:

  • Simple − Output wordt gemapt op een set tekens in A-Za-z0-9+/. De encoder voegt geen line feed toe aan de output, en de decoder verwijst elk teken af dat niet in A-Za-z0-9+/ valt.

  • URL − Output wordt gemapt op een set tekens in A-Za-z0-9+_. Output is URL- en bestandsnaamveilig.

  • MIME − Output wordt gemapt op MIME-vriendelijk formaat. Output wordt weergegeven in regels van maximaal 76 tekens elk, en gebruikt een carriage return '\r' gevolgd door een linefeed '\n' als regel scheider. Geen regel scheider aan het einde van de gecodeerde output.

Geneste Klassen

Nr. Geneste Klasse & Beschrijving
1

static class Base64.Decoder

Deze klasse implementeert een decoder voor het decoderen van bytedata met behulp van het Base64-encodingsschema zoals gespecificeerd in RFC 4648 en RFC 2045.

2

static class Base64.Encoder

Deze klasse implementeert een encoder voor het coderen van bytedata met behulp van het Base64-encodingsschema zoals gespecificeerd in RFC 4648 en RFC 2045.

Methoden

Nr. Methode Naam & Beschrijving
1

static Base64.Decoder getDecoder()

Geeft een Base64.Decoder terug die decodeert met behulp van het Basic-type Base64-encodingsschema.

2

static Base64.Encoder getEncoder()

Geeft een Base64.Encoder terug die codeert met behulp van het Basic-type Base64-encodingsschema.

3

static Base64.Decoder getMimeDecoder()

Geeft een Base64.Decoder terug die decodeert met behulp van het MIME-type Base64-decodingsschema.

4

static Base64.Encoder getMimeEncoder()

Geeft een Base64.Encoder terug die codeert met behulp van het MIME-type Base64-encodingsschema.

5

static Base64.Encoder getMimeEncoder(int lineLength, byte[] lineSeparator)

Geeft een Base64.Encoder terug die codeert met behulp van het MIME-type Base64-encodingsschema met gespecificeerde regellengte en regelscheiders.

6

static Base64.Decoder getUrlDecoder()

Geeft een Base64.Decoder terug die decodeert met behulp van het URL- en bestandsnaamveilige Base64-encodingsschema.

7

static Base64.Encoder getUrlEncoder()

Geeft een Base64.Encoder terug die codeert met behulp van het URL- en bestandsnaamveilige Base64-encodingsschema.

Overgeërfde Methoden

Deze klasse overerft methoden van de volgende klasse:

  • java.lang.Object

Base64 Voorbeeld

Maak het volgende Java-programma aan met een editor naar keuze in, zeg, C:/> JAVA.

Java8Tester.java

Live Demo
import java.util.Base64;
import java.util.UUID;
import java.io.UnsupportedEncodingException;

public class HelloWorld {
    public static void main(String args[]) {
        try {
            // Coderen met basis encoder
            String base64encodedString = Base64.getEncoder().encodeToString(
                "TutorialsPoint?java8".getBytes("utf-8"));
            System.out.println("Base64 Gecodeerde String (Basic) :" + base64encodedString);
            
            // Decoderen
            byte[] base64decodedBytes = Base64.getDecoder().decode(base64encodedString);
            System.out.println("Originele String: " + new String(base64decodedBytes, "utf-8"));
            
            base64encodedString = Base64.getUrlEncoder().encodeToString(
                "TutorialsPoint?java8".getBytes("utf-8"));
            System.out.println("Base64 Gecodeerde String (URL) :" + base64encodedString);
            
            StringBuilder stringBuilder = new StringBuilder();
            for (int i = 0; i < 10; ++i) {
                stringBuilder.append(UUID.randomUUID().toString());
            }
            byte[] mimeBytes = stringBuilder.toString().getBytes("utf-8");
            String mimeEncodedString = Base64.getMimeEncoder().encodeToString(mimeBytes);
            System.out.println("Base64 Gecodeerde String (MIME) :" + mimeEncodedString);
        } catch (UnsupportedEncodingException e) {
            System.out.println("Fout :" + e.getMessage());
        }
    }
}

Resultaat Verifiëren

Compileer de klasse met de javac compiler als volgt:

C:\JAVA>javac Java8Tester.java

Voer nu de Java8Tester uit als volgt:

C:\JAVA>java Java8Tester

Het zou de volgende output moeten produceren:

Base64 Gecodeerde String (Basic) :VHV0b3JpYWxzUG9pbnQ/amF2YTg=
Originele String: TutorialsPoint?java8
Base64 Gecodeerde String (URL) :VHV0b3JpYWxzUG9pbnQ_amF2YTg=
Base64 Gecodeerde String (MIME) :YmU3NWY2ODktNGM5YS00ODlmLWI2MTUtZTVkOTk2YzQ1Njk1Y2EwZTg2OTEtMmRiZC00YTQ1LWJlNTctMTI1MWUwMTk0ZWQyNDE0NDAwYjgtYTYxOS00NDY5LTllYTctNjc1YzE3YWJhZTk1MTQ2MDQzNDItOTAyOC00ZWI0LThlOTYtZWU5YzcwNWQyYzVhMTQxMWRjYTMtY2MwNi00MzU0LTg0MTgtNGQ1MDkwYjdiMzg2ZTY0OWU5MmUtZmNkYS00YWEwLTg0MjQtYThiOTQxNDQ2YzhhNTVhYWExZjItNjU2Mi00YmM4LTk2ZGYtMDE4YmY5ZDZhMjkwMzM3MWUzNDMtMmQ3MS00MDczLWI0Y2UtMTQxODE0MGU5YjdmYTVlODUxYzItN2NmOS00N2UyLWIyODQtMThlMWVkYTY4M2Q1YjE3YTMyYmItZjllMS00MTFkLWJiM2UtM2JhYzUxYzI5OWI4

Java

  1. Encoder Fundamentals: 2-naar-1 en 7-Segment Binaire Encoders Ontwerpen
  2. Java-operators beheersen: typen, syntax en praktische voorbeelden
  3. Java-commentaar: typen, gebruik en best practices
  4. Java Enhanced For-lus beheersen: syntax, voorbeelden en best practices
  5. Java Strings beheersen: aanmaken, methodes en best practices
  6. Java interfaces meesteren: concepten, implementatie en best practices
  7. Java anonieme inner classes meesteren: definitie, syntax en praktische voorbeelden
  8. Java Try-with-resources meesteren: automatische resource management uitgelegd
  9. Java Annotaties uitgelegd: typen, plaatsing en praktische voorbeelden
  10. Java Assertions: een praktische gids voor bugdetectie en codebetrouwbaarheid
  11. Java Vector begrijpen: Gebruik, Kenmerken en Vergelijking met ArrayList