Heim >Web-Frontend >js-Tutorial >Wie konvertiere ich eine Datei in einen Base64-String in JavaScript?

Wie konvertiere ich eine Datei in einen Base64-String in JavaScript?

Mary-Kate Olsen
Mary-Kate OlsenOriginal
2024-12-02 04:59:09295Durchsuche

How to Convert a File to a Base64 String in JavaScript?

Datei-zu-Base64-Konvertierung in JavaScript

Die Konvertierung einer Datei in einen Base64-String ist für verschiedene Webanwendungen unerlässlich. In JavaScript kann diese Aufgabe mithilfe der FileReader-Klasse gelöst werden.

Problem:

Ein Benutzer hat mit querySelector ein Dateiobjekt erhalten und möchte es über JSON einsenden base64-Format. Die Frage ist, wie man diese Datei in einen Base64-String konvertiert.

Lösung:

Um eine Datei in einen Base64-String zu konvertieren, verwenden Sie die FileReader-Klasse wie folgt:

function getBase64(file) {
   var reader = new FileReader();
   reader.readAsDataURL(file);
   reader.onload = function () {
     console.log(reader.result); // Base64 string
   };
   reader.onerror = function (error) {
     console.log('Error: ', error);
   };
}

var file = document.querySelector('#files > input[type="file"]').files[0];
getBase64(file);

In diesem Code initialisiert die getBase64-Funktion eine FileReader-Instanz und beginnt, die Datei als Daten-URL zu lesen. Wenn der Lesevorgang abgeschlossen ist, wird der Onload-Ereignishandler aufgerufen und gibt die Base64-Zeichenfolge an die Konsole aus.

Beachten Sie, dass die über querySelector erhaltene Datei ein File-Objekt ist, eine Unterklasse von Blob, wodurch sie kompatibel ist mit der FileReader-Klasse. Als Referenz steht ein vollständiges Arbeitsbeispiel zur Verfügung.

Das obige ist der detaillierte Inhalt vonWie konvertiere ich eine Datei in einen Base64-String in JavaScript?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn