Hakemistojen Hallinta Node.js:ssä
Olemme oppineet monia tiedostojen käsittelytekniikoita FileSystem (fs)-moduulin avulla. Kansiot ovat kuitenkin enemmän kuin vain paikkoja tiedostojen säilyttämiseen – ne tarjoavat mahdollisuuksia järjestelyyn, tiedon analysointiin ja muuhun.
Tässä luvussa syvennymme kansioiden käsittelyyn ja opastamme kansioiden selaamisessa, tärkeiden tilastojen keräämisessä, kansioiden prosessoinnissa sekä skriptin luomisessa, joka analysoi ja näyttää kansion sisällön.
Kansioiden selaaminen fs.readdir-metodilla
fs.readdir-metodi lukee asynkronisesti kansion sisällön. Se palauttaa tiedostonimien taulukon. Tämä metodi on hyödyllinen esimerkiksi tehtävissä, joissa halutaan listata kansion tiedostot.
Kuvitellaan tilanne, jossa käsittelemme laajoja oikeudellisia sopimuksia, muistioita ja muita asiakirjoja, jotka liittyvät eri tapauksiin ja asiakkaisiin. Voisimme luoda järjestelmän, joka hakee ja listaa tiedostojen nimet jokaisen asiakkaan kansiosta.
Esimerkki: Kansion tiedostonimien lukeminen
const fs = require("fs").promises;
async function listDirectoryContents(directoryPath) {
try {
const files = await fs.readdir(directoryPath);
console.log("Directory Contents:", files);
} catch (err) {
console.error("Error reading directory:", err.message);
}
}
listDirectoryContents("./docs");
Vaiheittainen selitys
Hakemistojen tilastotietojen hakeminen fs.stat-metodilla
Hakemistot sisältävät tiedostoja ja tallentavat arvokasta tietoa jokaisen tiedoston ominaisuuksista.
fs.stat-metodi hakee asynkronisesti tiedoston tai hakemiston tilastotiedot. Näihin tietoihin kuuluvat muun muassa tiedoston koko, käyttöoikeudet ja aikaleimat.
Haetaan jokaisen docs-hakemiston sisällä olevan kansion tilastotiedot.
Esimerkki: Hakemistojen nimet ja tilastotiedot
const fs = require("fs").promises;
async function processDirectoryContents(directoryPath) {
try {
const files = await fs.readdir(directoryPath);
const fileStatsPromises = files.map(async (file) => {
const filePath = `${directoryPath}/${file}`;
const stats = await fs.stat(filePath);
return { name: file, stats };
});
const fileStats = await Promise.all(fileStatsPromises);
console.log("Detailed File Information:", fileStats);
} catch (err) {
console.error("Error processing directory contents:", err.message);
}
}
processDirectoryContents("./docs");
Vaiheittainen selitys
1. Mikä menetelmä voidaan käyttää hakemiston sisällön listaamiseen?
2. Mikä on fs.stat-menetelmän tarkoitus?
Kiitos palautteestasi!
Kysy tekoälyä
Kysy tekoälyä
Kysy mitä tahansa tai kokeile jotakin ehdotetuista kysymyksistä aloittaaksesi keskustelumme
Can you explain how fs.stat works in more detail?
What kind of statistics can I get from fs.stat?
How can I filter only directories or files from the results?
Awesome!
Completion rate improved to 2.56
Hakemistojen Hallinta Node.js:ssä
Pyyhkäise näyttääksesi valikon
Olemme oppineet monia tiedostojen käsittelytekniikoita FileSystem (fs)-moduulin avulla. Kansiot ovat kuitenkin enemmän kuin vain paikkoja tiedostojen säilyttämiseen – ne tarjoavat mahdollisuuksia järjestelyyn, tiedon analysointiin ja muuhun.
Tässä luvussa syvennymme kansioiden käsittelyyn ja opastamme kansioiden selaamisessa, tärkeiden tilastojen keräämisessä, kansioiden prosessoinnissa sekä skriptin luomisessa, joka analysoi ja näyttää kansion sisällön.
Kansioiden selaaminen fs.readdir-metodilla
fs.readdir-metodi lukee asynkronisesti kansion sisällön. Se palauttaa tiedostonimien taulukon. Tämä metodi on hyödyllinen esimerkiksi tehtävissä, joissa halutaan listata kansion tiedostot.
Kuvitellaan tilanne, jossa käsittelemme laajoja oikeudellisia sopimuksia, muistioita ja muita asiakirjoja, jotka liittyvät eri tapauksiin ja asiakkaisiin. Voisimme luoda järjestelmän, joka hakee ja listaa tiedostojen nimet jokaisen asiakkaan kansiosta.
Esimerkki: Kansion tiedostonimien lukeminen
const fs = require("fs").promises;
async function listDirectoryContents(directoryPath) {
try {
const files = await fs.readdir(directoryPath);
console.log("Directory Contents:", files);
} catch (err) {
console.error("Error reading directory:", err.message);
}
}
listDirectoryContents("./docs");
Vaiheittainen selitys
Hakemistojen tilastotietojen hakeminen fs.stat-metodilla
Hakemistot sisältävät tiedostoja ja tallentavat arvokasta tietoa jokaisen tiedoston ominaisuuksista.
fs.stat-metodi hakee asynkronisesti tiedoston tai hakemiston tilastotiedot. Näihin tietoihin kuuluvat muun muassa tiedoston koko, käyttöoikeudet ja aikaleimat.
Haetaan jokaisen docs-hakemiston sisällä olevan kansion tilastotiedot.
Esimerkki: Hakemistojen nimet ja tilastotiedot
const fs = require("fs").promises;
async function processDirectoryContents(directoryPath) {
try {
const files = await fs.readdir(directoryPath);
const fileStatsPromises = files.map(async (file) => {
const filePath = `${directoryPath}/${file}`;
const stats = await fs.stat(filePath);
return { name: file, stats };
});
const fileStats = await Promise.all(fileStatsPromises);
console.log("Detailed File Information:", fileStats);
} catch (err) {
console.error("Error processing directory contents:", err.message);
}
}
processDirectoryContents("./docs");
Vaiheittainen selitys
1. Mikä menetelmä voidaan käyttää hakemiston sisällön listaamiseen?
2. Mikä on fs.stat-menetelmän tarkoitus?
Kiitos palautteestasi!