English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية

Guida di Base Java

Controllo di流程 Java

Array Java

Java Orientato agli oggetti (I)

Java Orientato agli oggetti (II)

Java Orientato agli oggetti (III)

Gestione delle Eccezioni Java

List Java

Queue (coda) Java

Map di Java

Set di Java

Input/Output (I/O) Java

Reader/Writer Java

Altri argomenti Java

Java8 Base64

Nuove funzionalità Java 8

In Java 8, la codifica Base64 è diventata lo standard della libreria di classe Java.

Java 8 include integrato l'encoder e il decoder di codifica Base64.

La classe Base64 fornisce un insieme di metodi statici per ottenere i tre codec BASE64 di seguito:

  • Base:L'output viene mappato a un insieme di caratteri A-Za-z0-9+/ e l'encoding non aggiunge alcuna riga di separazione. La decodifica dell'output supporta solo A-Za-z0-9+/.

  • URL:L'output viene mappato a un insieme di caratteri A-Za-z0-9+_ e rappresenta URL e file.

  • MIME:L'output viene mappato in un formato amichevole MIME. Ogni riga non supera i 76 caratteri e viene divisa utilizzando '\r' seguita da '\n'. L'output di codifica non termina con una riga di separazione.

Classe interna

Numero di sequenzaClasse interna & Descrizione
1static class Base64.Decoder

Questa classe implementa un decoder utilizzato, utilizzando la codifica Base64 per decodificare i dati in byte.

2static class Base64.Encoder

Questa classe implementa un encoder, utilizzando la codifica Base64 per codificare i dati in byte.

Metodo

Numero di sequenzaNome del metodo & Descrizione
1static Base64.Decoder getDecoder()

Restituisce un Base64.Decoder, che utilizza lo schema di codifica base64 di base.

2static Base64.Encoder getEncoder()

Restituisce un Base64.Encoder, che utilizza lo schema di codifica base64 di base.

3static Base64.Decoder getMimeDecoder()

Restituisce un Base64.Decoder, che decodifica utilizzando lo schema di codifica Base64 MIME.

4

static Base64.Encoder getMimeEncoder()

Restituisce un Base64.Encoder, che codifica utilizzando lo schema di codifica Base64 MIME.

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

Restituisce un Base64.Encoder, che codifica utilizzando lo schema di codifica Base64 MIME, che può essere specificato la lunghezza della riga e il separatore delle righe tramite parametri.

6static Base64.Decoder getUrlDecoder()

Restituisce un Base64.Decoder, che decodifica utilizzando lo schema di codifica Base64 sicuro per URL e nomi di file.

7static Base64.Encoder getUrlEncoder()

Restituisce un Base64.Encoder, che codifica utilizzando lo schema di codifica Base64 sicuro per URL e nomi di file.

Attenzione:Molte delle metodo della classe Base64 derivano da java.lang.Object Ereditarietà delle classi.

Esempio Base64

Esempio seguente dimostra l'uso di Base64:

import java.util.Base64;
import java.util.UUID;
import java.io.UnsupportedEncodingException;
 
public class Java8Tester {
   public static void main(String args[]){
      try {
        
         // Utilizzo della codifica base
         String base64encodedString = Base64.getEncoder().encodeToString("w3codebox?java8".getBytes("utf-8"));
         System.out.println("Codifica Base64 (basica) :" + base64encodedString);
        
         // Decodifica
         byte[] base64decodedBytes = Base64.getDecoder().decode(base64encodedString);
        
         System.out.println("Stringa originale: " + new String(base64decodedBytes, "utf-8"));
         base64encodedString = Base64.getUrlEncoder().encodeToString("w3codebox?java8".getBytes("utf-8"));
         System.out.println("Stringa codificata in Base64 (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("Stringa codificata in Base64 (MIME): " + mimeEncodedString);
         
      
         System.out.println("Error:\
      }
   }
}

Esegui lo script sopra, il risultato sarà:

$ javac Java8Tester.java 
$ java Java8Tester
Stringa originale: w3codebox?java8
Stringa codificata in Base64 (URL): VHV0b3JpYWxzUG9pbnQ_amF2YTg=
Stringa codificata in Base64 (MIME): M2Q4YmUxMTEtYWRkZi00NzBlLTgyZDgtN2MwNjgzOGY2NGFlOTQ3NDYyMWEtZDM4ZS00YWVhLTkz
OTYtY2ZjMzZiMzFhNmZmOGJmOGI2OTYtMzkxZi00OTJiLWEyMTQtMjgwN2RjOGI0MTBmZWUwMGNk
NTktY2ZiZS00MTMxLTgzODctNDRjMjFkYmZmNGM4Njg1NDc3OGItNzNlMC00ZWM4LTgxNzAtNjY3
NTgyMGY3YzVhZWQyMmNiZGItOTIwZi00NGUzLTlkMjAtOTkzZTI1MjUwMDU5ZjdkYjg2M2UtZTJm
YS00Y2Y2LWIwNDYtNWQ2MGRiOWQyZjFiMzJhMzYxOWQtNDE0ZS00MmRiLTk3NDgtNmM4NTczYjMx
ZDIzNGRhOWU4NDAtNTBiMi00ZmE2LWE0M2ItZjU3MWFiNTI2NmQ2NTlmMTFmZjctYjg1NC00NmE1
LWEzMWItYjk3MmEwZTYyNTdk

Nuove funzionalità Java 8