Håndtering af Mapper i Node.js
Vi har lært mange teknikker til filhåndtering gennem vores udforskning af FileSystem (fs)-modulet. Men mapper er mere end blot steder til opbevaring af filer – de giver muligheder for organisering, dataanalyse og meget mere.
I dette kapitel dykker vi ned i mappehåndtering og guider dig i navigation af mapper, indsamling af vigtige statistikker, behandling af mapper samt oprettelse af et script til at analysere og vise mappeindhold.
📂 Navigering i mapper med fs.readdir
Metoden fs.readdir læser asynkront indholdet af en mappe. Den returnerer et array af filnavne. Denne metode kan være nyttig til opgaver, hvor man skal liste filer i en mappe.
Forestil dig et scenarie, hvor vi arbejder med omfattende juridiske kontrakter, notater og andre dokumenter relateret til forskellige sager og klienter. Vi kunne oprette et system, der udtrækker og viser navnene på filerne i hver klients mappe.
Eksempel på kode: Læs filnavnene i en mappe
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");
Trinvis forklaring
📊 Indhentning af mappestatistik med fs.stat
Mapper indeholder filer og rummer værdifuld information om hver fils attributter.
Metoden fs.stat henter asynkront statistikken for en fil eller mappe. Disse statistikker inkluderer filstørrelse, tilladelser, tidsstempler og mere.
Lad os indhente statistikken for hver mappe i docs-mappen.
Kodeeksempel: Hent mappenavne og statistik
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");
Trinvis forklaring
🧐 Quiztid
Test din viden om FileSystem (fs)-modulet med et par spørgsmål om håndtering af mapper.
1. Hvilken metode kan bruges til at vise indholdet af en mappe?
2. Hvad er formålet med fs.stat-metoden?
Tak for dine kommentarer!
Spørg AI
Spørg AI
Spørg om hvad som helst eller prøv et af de foreslåede spørgsmål for at starte vores chat
Awesome!
Completion rate improved to 2.56
Håndtering af Mapper i Node.js
Stryg for at vise menuen
Vi har lært mange teknikker til filhåndtering gennem vores udforskning af FileSystem (fs)-modulet. Men mapper er mere end blot steder til opbevaring af filer – de giver muligheder for organisering, dataanalyse og meget mere.
I dette kapitel dykker vi ned i mappehåndtering og guider dig i navigation af mapper, indsamling af vigtige statistikker, behandling af mapper samt oprettelse af et script til at analysere og vise mappeindhold.
📂 Navigering i mapper med fs.readdir
Metoden fs.readdir læser asynkront indholdet af en mappe. Den returnerer et array af filnavne. Denne metode kan være nyttig til opgaver, hvor man skal liste filer i en mappe.
Forestil dig et scenarie, hvor vi arbejder med omfattende juridiske kontrakter, notater og andre dokumenter relateret til forskellige sager og klienter. Vi kunne oprette et system, der udtrækker og viser navnene på filerne i hver klients mappe.
Eksempel på kode: Læs filnavnene i en mappe
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");
Trinvis forklaring
📊 Indhentning af mappestatistik med fs.stat
Mapper indeholder filer og rummer værdifuld information om hver fils attributter.
Metoden fs.stat henter asynkront statistikken for en fil eller mappe. Disse statistikker inkluderer filstørrelse, tilladelser, tidsstempler og mere.
Lad os indhente statistikken for hver mappe i docs-mappen.
Kodeeksempel: Hent mappenavne og statistik
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");
Trinvis forklaring
🧐 Quiztid
Test din viden om FileSystem (fs)-modulet med et par spørgsmål om håndtering af mapper.
1. Hvilken metode kan bruges til at vise indholdet af en mappe?
2. Hvad er formålet med fs.stat-metoden?
Tak for dine kommentarer!