Lecture du contenu des fichiers côté client en JavaScript dans les navigateurs
Dans le but de trouver une solution basée sur un script pour récupérer le contenu d'un fichier à partir d'un machine client utilisant un navigateur, une solution a été développée pour Firefox et Internet Explorer. Cependant, l'extension de cette fonctionnalité à d'autres navigateurs soulève la question suivante :
Pouvons-nous accéder au contenu des fichiers côté client dans Safari et Chrome ?
Approche de l'API de fichier native
Depuis la réponse originale, l'API File est devenue une méthode standardisée prise en charge par la plupart des navigateurs modernes, notamment IE 10 et en avant. Cette API offre une prise en charge robuste de la lecture de fichiers asynchrone, de la gestion de plusieurs fichiers et du décodage de l'encodage de texte adaptable.
Pour utiliser l'API de fichiers, les étapes suivantes peuvent être utilisées :
var file = document.getElementById("fileForUpload").files[0]; if (file) { var reader = new FileReader(); reader.readAsText(file, "UTF-8"); reader.onload = function (evt) { document.getElementById("fileContents").innerHTML = evt.target.result; } reader.onerror = function (evt) { document.getElementById("fileContents").innerHTML = "error reading file"; } }
Navigateurs basés sur WebKit (Safari, Chrome)
Malheureusement, au moment de la réponse originale, les navigateurs WebKit (y compris Safari et Chrome) ne disposaient pas d'une prise en charge native pour la lecture du contenu des fichiers. Cependant, des suggestions ont été présentées :
Depuis lors , il n’y a eu aucune mise à jour significative de la situation. Les navigateurs WebKit continuent de fournir uniquement l'accès aux noms et tailles de fichiers via l'objet File, ce qui limite la possibilité de lire le contenu des fichiers directement à partir de ces navigateurs.
Considérations alternatives
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!