So erstellen Sie einen Daten-URI (base64) in Java

Ein Hinweis zum Generieren eines ** Daten-URI ** aus einer Datei in Java

Was ist Daten-URI?

** Daten-URI ** ist eine Base64-codierte Version von Mediendaten usw. und lautet wie folgt.

data:video/mp4;base64,AAAAIGZ0eXBpc29tAAACAGlzb21pc28y ...==

In HTML

<image src="data:image/png;base64,AAAAIGZ0eXBpc29tAAAC ・ ・ ・">

<video src="data:video/mp4;base64,AAAAIGZ0eXBpc29tAAAC ・ ・ ・">

Es ist möglich, src like anzugeben.

1. Überprüfen Sie den MIME-Typ, der den Dateityp darstellt

Untersuchen Sie den MIME-Typ der Datei.

File file = new File("movie.mp4");

String contentType = Files.probeContentType(file.toPath());

2. Lesen Sie den gesamten Inhalt der Datei in das Array byte []

byte[] data = Files.readAllBytes(file.toPath());

3. Codieren Sie das Byte [] -Array in base64

 String base64str = DatatypeConverter.printBase64Binary(data);
 String base64str = Base64.getEncoder().encodeToString(data);

4. Erstellen Sie das Daten-URI-Format

Formatieren Sie wie folgt

data:[<MIME-type>][;charset=<encoding>][;base64],<data>
StringBuilder sb = new StringBuilder();
sb.append("data:");
sb.append(contentType);
sb.append(";base64,");
sb.append(base64str);

Vollständiger Quellcode

ToDataURI.java


package org.example;

import java.io.File;
import java.io.IOException;
import java.nio.file.Files;

import javax.xml.bind.DatatypeConverter;

public class ToDataURI {

	public static void main(String[] args) throws IOException {

		//Quelldatei
		File file = new File("movie.mp4");

		//Untersuchen Sie den Inhaltstyp einer Datei
		String contentType = Files.probeContentType(file.toPath());

		//Dateiinhaltsbyte[]Laden in
		byte[] data = Files.readAllBytes(file.toPath());

		// byte[]Zu einem base64-String(java7)
		String base64str = DatatypeConverter.printBase64Binary(data);

		// byte[]Zu einem base64-String(java8)
		// String base64str = Base64.getEncoder().encodeToString(data);

		//Erstellen Sie einen Daten-URI
		StringBuilder sb = new StringBuilder();
		sb.append("data:");
		sb.append(contentType);
		sb.append(";base64,");
		sb.append(base64str);

		//Ergebnisse anzeigen
		System.out.println(sb.toString());

	}
}

Bei der Ausführung ist der Daten-URI abgeschlossen

data:video/mp4;base64,AAAAIGZ0eXBpc29tAAACAGlzb21pc28yYXZjMW1wN ・ ・ ・ Unten weggelassen

Recommended Posts

So erstellen Sie einen Daten-URI (base64) in Java
So erstellen Sie eine Java-Umgebung in nur 3 Sekunden
So führen Sie eine Basiskonvertierung in Java durch
So erstellen Sie ein neues Gradle + Java + Jar-Projekt in Intellij 2016.03
So zeigen Sie eine Webseite in Java an
So erstellen Sie ein Thema in Liferay 7 / DXP
So erstellen Sie einfach ein Pulldown mit Rails
So erstellen Sie eine Methode
So löschen Sie alle Daten in einer bestimmten Tabelle
Ich habe versucht, eine Clova-Fähigkeit in Java zu erstellen
So konvertieren Sie A in a und a in A mit logischem Produkt und Summe in Java
So konvertieren Sie eine Datei in ein Byte-Array in Java
So erstellen Sie einen Java-Container
Wie man JAVA in 7 Tagen lernt
Wie verwende ich Klassen in Java?
So benennen Sie Variablen in Java
So erstellen Sie ein Java-Array
So verketten Sie Zeichenfolgen mit Java
Verwendung von JSON-Daten in der WebSocket-Kommunikation (Java, JavaScript)
So erstellen Sie ein leichtes Container-Image für Java-Apps
So erstellen Sie ein Platzhalterteil zur Verwendung in der IN-Klausel
Speichern von Zeichenfolgen von ArrayList zu Zeichenfolge in Java (Personal)
Erstellen Sie eine Methode, um den Steuersatz in Java zurückzugeben
So entwickeln und registrieren Sie eine Sota-App in Java
So simulieren Sie das Hochladen von Post-Object-Formularen in OSS in Java
So erstellen Sie ein Service Builder-Portlet in Liferay 7 / DXP
So erstellen Sie eine Java-Kalenderzusammenfassung
So implementieren Sie die Datumsberechnung in Java
So implementieren Sie den Kalman-Filter mit Java
Mehrsprachige Unterstützung für Java Verwendung des Gebietsschemas
Erstellen Sie Binärdaten variabler Länge in Java
So fügen Sie ein Video in Rails ein
So implementieren Sie einen Job, der die Java-API in JobScheduler verwendet
[Einführung in Java] So schreiben Sie ein Java-Programm
So erstellen Sie ein Maven-Repository für 2020
So bedienen Sie automatisch einen in Java unter Windows erstellten Bildschirm
Wie erstelle ich einen Discord Bot (Java)
Erstellen Sie eine TODO-App in Java 7 Create Header
So erzwingen Sie Codierungskonventionen in Java
Einbetten von Janus Graph in Java
So erhalten Sie das Datum mit Java
[Swift5] So erstellen Sie einen Begrüßungsbildschirm
[Rails] So erstellen Sie eine Teilvorlage
So veröffentlichen Sie eine Bibliothek in jCenter
So überschreiben Sie Firebase-Daten mit Swift
So testen Sie eine private Methode und verspotten sie teilweise in Java
So erstellen Sie eine Abfrage mithilfe von Variablen in GraphQL [Verwenden von Ruby on Rails]
[Persönliches Memo] Interaktion mit dem Zufallszahlengenerator in Java
So erstellen Sie eine Zip-Datei beim Gruppieren von Datenbanksuchergebnissen in Java
So übergeben Sie einen Proxy, wenn Sie REST mit SSL in Java auslösen
So ermitteln Sie den absoluten Pfad eines in Java ausgeführten Verzeichnisses
[Java] [Für Anfänger] So fügen Sie Elemente direkt in ein zweidimensionales Array ein
So erstellen Sie Ihre eigene Anmerkung in Java und erhalten den Wert
So erstellen Sie überall eine H2-Datenbank
Zwei Möglichkeiten, einen Thread in Java + @ zu starten
Erstellen Sie eine CSR mit erweiterten Informationen in Java