Modulo file system Node.js
Node.js come file server
Il modulo del file system Node.js ti consente di lavorare con il file system sul tuo computer.
Per includere il modulo File System, utilizzare il
require()
metodo:
var fs = require('fs');
Uso comune per il modulo File System:
- Leggi i file
- Crea file
- Aggiorna file
- Cancella file
- Rinomina i file
Leggi file
Il fs.readFile()
metodo viene utilizzato per leggere i file sul tuo computer.
Supponiamo di avere il seguente file HTML (che si trova nella stessa cartella di Node.js):
demofile1.html
<html>
<body>
<h1>My Header</h1>
<p>My paragraph.</p>
</body>
</html>
Crea un file Node.js che legge il file HTML e restituisce il contenuto:
Esempio
var http = require('http');
var fs = require('fs');
http.createServer(function
(req, res) {
fs.readFile('demofile1.html', function(err, data) {
res.writeHead(200, {'Content-Type': 'text/html'});
res.write(data);
return res.end();
});
}).listen(8080);
Salva il codice sopra in un file chiamato "demo_readfile.js" e avvia il file:
Avvia demo_readfile.js:
C:\Users\Your Name>node demo_readfile.js
Se hai seguito gli stessi passaggi sul tuo computer, vedrai lo stesso risultato dell'esempio: http://localhost:8080
Crea file
Il modulo File System ha metodi per creare nuovi file:
fs.appendFile()
fs.open()
fs.writeFile()
Il fs.appendFile()
metodo aggiunge il contenuto specificato a un file. Se il file non esiste, il file verrà creato:
Esempio
Crea un nuovo file usando il metodo appendFile():
var fs = require('fs');
fs.appendFile('mynewfile1.txt', 'Hello
content!', function (err) {
if (err) throw err;
console.log('Saved!');
});
Il fs.open()
metodo accetta un "flag" come secondo argomento, se il flag è "w" per "scrittura", il file specificato viene aperto per la scrittura. Se il file non esiste, viene creato un file vuoto:
Esempio
Crea un nuovo file vuoto usando il metodo open():
var fs = require('fs');
fs.open('mynewfile2.txt', 'w', function (err,
file) {
if (err) throw err;
console.log('Saved!');
});
Il fs.writeFile()
metodo sostituisce il file e il contenuto specificati, se esistenti. Se il file non esiste, verrà creato un nuovo file, contenente il contenuto specificato:
Esempio
Crea un nuovo file usando il metodo writeFile():
var fs = require('fs');
fs.writeFile('mynewfile3.txt', 'Hello
content!', function (err) {
if (err) throw err;
console.log('Saved!');
});
Aggiorna file
Il modulo File System ha metodi per aggiornare i file:
fs.appendFile()
fs.writeFile()
Il fs.appendFile()
metodo aggiunge il contenuto specificato alla fine del file specificato:
Esempio
Aggiungi "Questo è il mio testo". alla fine del file "mynewfile1.txt":
var fs = require('fs');
fs.appendFile('mynewfile1.txt', ' This is my
text.', function (err) {
if (err) throw err;
console.log('Updated!');
});
Il fs.writeFile()
metodo sostituisce il file e il contenuto specificati:
Esempio
Sostituisci il contenuto del file "mynewfile3.txt":
var fs = require('fs');
fs.writeFile('mynewfile3.txt', 'This is my text', function (err) {
if (err) throw err;
console.log('Replaced!');
});
Cancella file
Per eliminare un file con il modulo File System, utilizzare il fs.unlink()
metodo.
Il fs.unlink()
metodo elimina il file specificato:
Esempio
Elimina "mynewfile2.txt":
var fs = require('fs');
fs.unlink('mynewfile2.txt', function (err) {
if (err) throw err;
console.log('File deleted!');
});
Rinomina file
Per rinominare un file con il modulo File System, utilizzare il fs.rename()
metodo.
Il fs.rename()
metodo rinomina il file specificato:
Esempio
Rinomina "mynewfile1.txt" in "myrinomedfile.txt":
var fs = require('fs');
fs.rename('mynewfile1.txt', 'myrenamedfile.txt', function (err) {
if (err) throw err;
console.log('File Renamed!');
});
Caricare files
Puoi anche utilizzare Node.js per caricare file sul tuo computer.
Leggi come nel nostro capitolo Carica file di Node.js.