JavaScript:
Lecture d'un fichier texte
Comment faire :
Pour lire un fichier côté serveur (Node.js), utilisez le module fs
:
const fs = require('fs');
fs.readFile('exemple.txt', 'utf8', (err, data) => {
if (err) {
console.error(err);
return;
}
console.log(data);
});
Sortie attendue:
Contenu de votre fichier exemple.txt
Pour le navigateur, utilisez l’API FileReader
:
document.getElementById('input-file').addEventListener('change', function() {
var reader = new FileReader();
reader.onload = function() {
console.log(reader.result);
};
reader.readAsText(this.files[0]);
});
HTML associé :
<input type="file" id="input-file" />
Après avoir sélectionné un fichier, la console affichera son contenu.
Exploration :
Historiquement, lire des fichiers avec JavaScript était limité au serveur (comme avec Node.js). Avec l’évolution des navigateurs et de l’HTML5, c’est désormais possible côté client avec l’API FileReader
.
Il y a des alternatives, comme fs.promises
pour une syntaxe async/await, ou fetch
pour les fichiers statiques sur le serveur.
Côté implémentation, notez que readFile
est asynchrone et peut bloquer avec de gros fichiers. Envisagez readFileSync
pour les scripts simples ou readFile
avec des streams pour de meilleurs performances.
Voir aussi :
- Documentation Node.js ‘fs’: https://nodejs.org/api/fs.html
- MDN Web Docs ‘FileReader’: https://developer.mozilla.org/fr/docs/Web/API/FileReader
- Article sur les streams de Node.js: https://nodejs.org/api/stream.html