Node FS – NodeJS Utwórz plik, odczytaj plik, zapisz do pliku
Spis treści:
Wprowadzenie
System plików Node (Node FS) to moduł wbudowany w Node.js, który pozwala na interakcję z systemem plików systemu operacyjnego. Udostępnia zestaw funkcji umożliwiających tworzenie, odczytywanie, zapisywanie, usuwanie i modyfikację plików i katalogów. Dzięki Node FS programiści mogą łatwo zarządzać plikami i katalogami, co jest niezbędne w wielu projektach Node.js, takich jak przetwarzanie plików, przechowywanie danych i tworzenie aplikacji internetowych.
W tym artykule omówimy podstawowe operacje na plikach przy użyciu Node FS, w tym:
– Tworzenie pliku
– Odczytywanie pliku
– Zapisywanie do pliku
Tworzenie pliku
Aby utworzyć plik za pomocą Node FS, możemy użyć funkcji fs.writeFile()
. Funkcja ta przyjmuje trzy argumenty:
1. Ścieżka do pliku: Ścieżka do pliku, który chcemy utworzyć.
2. Dane: Dane, które chcemy zapisać w pliku. Może to być łańcuch, bufor lub obiekt.
3. Callback: Funkcja zwrotna, która zostanie wywołana po zakończeniu operacji.
Na przykład, aby utworzyć nowy plik o nazwie nowy-plik.txt
z treścią „Hello, world!”, możemy użyć następującego kodu:
javascript
const fs = require('fs');
fs.writeFile('nowy-plik.txt', 'Hello, world!', (err) => {
if (err) {
console.error(err);
} else {
console.log('Plik utworzony pomyślnie');
}
});
Jeśli plik już istnieje, zostanie nadpisany nową zawartością.
Tworzenie katalogu
Aby utworzyć katalog za pomocą Node FS, możemy użyć funkcji fs.mkdir()
. Funkcja ta przyjmuje dwa argumenty:
1. Ścieżka do katalogu: Ścieżka do katalogu, który chcemy utworzyć.
2. Callback: Funkcja zwrotna, która zostanie wywołana po zakończeniu operacji.
Na przykład, aby utworzyć nowy katalog o nazwie nowy-katalog
, możemy użyć następującego kodu:
javascript
const fs = require('fs');
fs.mkdir('nowy-katalog', (err) => {
if (err) {
console.error(err);
} else {
console.log('Katalog utworzony pomyślnie');
}
});
Jeśli katalog już istnieje, funkcja fs.mkdir()
zwróci błąd.
Odczytywanie pliku
Aby odczytać plik za pomocą Node FS, możemy użyć funkcji fs.readFile()
. Funkcja ta przyjmuje trzy argumenty:
1. Ścieżka do pliku: Ścieżka do pliku, który chcemy odczytać.
2. Opcje: Obiekt opcji określający format danych wyjściowych (np. łańcuch, bufor lub obiekt).
3. Callback: Funkcja zwrotna, która zostanie wywołana po zakończeniu operacji.
Na przykład, aby odczytać plik nowy-plik.txt
jako łańcuch, możemy użyć następującego kodu:
javascript
const fs = require('fs');
fs.readFile('nowy-plik.txt', 'utf8', (err, data) => {
if (err) {
console.error(err);
} else {
console.log(data);
}
});
Funkcja fs.readFile()
domyślnie zwraca bufor. Aby odczytać plik jako obiekt, możemy użyć opcji json
:
javascript
fs.readFile('nowy-plik.json', 'utf8', (err, data) => {
if (err) {
console.error(err);
} else {
const obiekt = JSON.parse(data);
console.log(obiekt);
}
});
Zapisywanie do pliku
Aby zapisać do pliku za pomocą Node FS, możemy użyć funkcji fs.writeFile()
. Funkcja ta przyjmuje trzy argumenty:
1. Ścieżka do pliku: Ścieżka do pliku, do którego chcemy zapisać.
2. Dane: Dane, które chcemy zapisać w pliku. Może to być łańcuch, bufor lub obiekt.
3. Callback: Funkcja zwrotna, która zostanie wywołana po zakończeniu operacji.
Na przykład, aby zapisać łańcuch „Nowa zawartość” do pliku nowy-plik.txt
, możemy użyć następującego kodu:
javascript
const fs = require('fs');
fs.writeFile('nowy-plik.txt', 'Nowa zawartość', (err) => {
if (err) {
console.error(err);
} else {
console.log('Plik zaktualizowany pomyślnie');
}
});
Jeśli plik nie istnieje, zostanie utworzony.
Dodawanie do pliku
Aby dodać do pliku za pomocą Node FS, możemy użyć funkcji fs.appendFile()
. Funkcja ta przyjmuje trzy argumenty:
1. Ścieżka do pliku: Ścieżka do pliku, do którego chcemy dodać.
2. Dane: Dane, które chcemy dodać do pliku. Może to być łańcuch, bufor lub obiekt.
3. Callback: Funkcja zwrotna, która zostanie wywołana po zakończeniu operacji.
Na przykład, aby dodać łańcuch „Dodatkowa zawartość” do pliku nowy-plik.txt
, możemy użyć następującego kodu:
javascript
const fs = require('fs');
fs.appendFile('nowy-plik.txt', 'Dodatkowa zawartość', (err) => {
if (err) {
console.error(err);
} else {
console.log('Dane dodane do pliku pomyślnie');
}
});
Podsumowanie
Node FS jest potężnym modułem, który pozwala na łatwe zarządzanie plikami i katalogami w aplikacjach Node.js. Udostępnia zestaw funkcji umożliwiających tworzenie, odczytywanie, zapisywanie i usuwanie plików i katalogów, co jest niezbędne w wielu projektach Node.js. W tym artykule omówiliśmy podstawowe operacje na plikach przy użyciu Node FS, takie jak tworzenie plików, odczytywanie plików i zapisywanie do plików.
Rozumiejąc koncepcje opisane w tym artykule, programiści Node.js mogą manipulować plikami i katalogami w elastyczny i wydajny sposób, tworząc zaawansowane aplikacje, które wykorzystują system plików do przechowywania i przetwarzania danych.
Często zadawane pytania (FAQ)
1. Co to jest Node FS?
Node FS to moduł wbudowany w Node.js, który pozwala na interakcję z systemem plików systemu operacyjnego.
2. Jak utworzyć plik za pomocą Node FS?
Możesz utworzyć plik za pomocą funkcji fs.writeFile()
.
3. Jak odczytać plik za pomocą Node FS?
Możesz odczytać plik za pomocą funkcji fs.readFile()
.
4. Jak zapisać do pliku za pomocą Node FS?
Możesz zapisać do pliku za pomocą funkcji fs.writeFile()
.
5. Jak dodać do pliku za pomocą Node FS?
Możesz dodać do pliku za pomocą funkcji fs.appendFile()
.
6. Jak stworzyć katalog za pomocą Node FS?
Możesz stworzyć katalog za pomocą funkcji fs.mkdir()
.
7. Jak sprawdzić, czy plik istnieje za pomocą Node FS?
Możesz użyć funkcji fs.exists()
lub fs.access()
w celu sprawdzenia istnienia pliku.
8. Jak usunąć plik lub katalog za pomocą Node FS?
Możesz użyć funkcji fs.unlink()
w celu usunięcia pliku i fs.rmdir()
w celu usunięcia katalogu.
9. Jak odczytać zawartość katalogu za pomocą Node FS?
Możesz użyć funkcji fs.readdir()
w celu odczytania zawartości katalogu.
10. Jak monitorować zmiany w plikach za pomocą Node FS?
Możesz użyć funkcji fs.watch()
w celu monitorowania zmian w plikach.