Hochgeladene Datei in den Speicher einlesen mit reinem Javascript
English
Deutsch
Du hast ein File-Objekt in Javascript (z.B. aus einem Drag-&-Drop-Upload oder einem <input type="file">), das du im Browser in den Speicher einlesen möchtest. Du möchtest dafür keine Bibliothek verwenden, sondern eine reine Javascript-Lösung bevorzugen.
Lösung
Verwende diese Funktion:
read_file_into_memory.js
/**
* Hilfsfunktion zum Einlesen einer gesamten Datei in den Speicher.
*
* Der Handler erhält ein Array von Objekten:
* {
* name: Dateiname als String,
* size: Größe in Bytes als Zahl,
* type: MIME-Typ als String,
* content: Dateiinhalt als Uint8Array
* }
* @param file Die einzulesende Datei
* @param handler
*/
function readFileIntoMemory (file, callback) {
var reader = new FileReader();
reader.onload = function () {
callback({
name: file.name,
size: file.size,
type: file.type,
content: new Uint8Array(this.result)
});
};
reader.readAsArrayBuffer(file);
}Verwendungsbeispiel:
read_file_into_memory_usage.js
// Verwendungsbeispiel
readFileIntoMemory(file, function(fileInfo) {
console.info("Read file " + fileInfo.name + " of size " + fileInfo.size);
// Du kannst fileInfo.content, welches ein Uint8Array ist, hier verwenden
});Check out similar posts by category:
Javascript
If this post helped you, please consider buying me a coffee or donating via PayPal to support research & publishing of new posts on TechOverflow