Bagaimana untuk membaca direktori fail dalam nodejs

WBOY
Lepaskan: 2023-05-18 10:32:07
asal
3612 orang telah melayarinya

Node.js ialah sumber terbuka, persekitaran masa jalan JavaScript merentas platform yang boleh digunakan bukan sahaja untuk pembangunan bahagian pelayan, tetapi juga untuk pembangunan pihak pelanggan. Dalam Node.js, kita boleh menggunakan modul fs untuk membaca direktori fail.

Modul fs ialah modul yang digunakan untuk berinteraksi dengan sistem fail Ia menyediakan beberapa fungsi operasi fail biasa, termasuk membaca dan menulis fail, mencipta dan memadam direktori, dsb. Menggunakan modul fs untuk membaca direktori fail boleh menggunakan kaedah fs.readdir(), fs.readdirSync() dan fs.stat(). Kaedah

  1. fs.readdir()

fs.readdir() boleh membaca nama semua fail dan subdirektori di bawah laluan yang ditentukan dan mengembalikan fail ini dalam bentuk tatasusunan dan nama subdirektori. Parameter pertama kaedah ini ialah laluan direktori untuk dibaca, dan parameter kedua ialah fungsi panggil balik Parameter ralat dalam fungsi ini mewakili mesej ralat semasa membaca direktori, dan parameter fail ialah senarai fail yang dibaca.

Berikut ialah contoh kod yang menggunakan fs.readdir() untuk membaca direktori fail:

const fs = require('fs');
const path = './filedir';//目录路径

fs.readdir(path, function(err, files) {
    if (err) {
        console.error('读取目录出错:', err);
        return;
    }

    console.log('读取到的文件列表:', files);
});
Salin selepas log masuk

Jalankan kod sampel ini, konsol akan mengeluarkan nama fail dan subdirektori dalam direktori fail . Perlu diingat bahawa kaedah fs.readdir() adalah tak segerak dan memerlukan fungsi panggil balik untuk mendapatkan hasilnya.

  1. fs.readdirSync()

Kaedah fs.readdirSync() adalah serupa dengan kaedah fs.readdir() tetapi ia adalah segerak dan akan menyekat urutan sehingga direktori fail Baca selesai. Parameter pertama kaedah ini ialah laluan direktori untuk dibaca, dan nilai pulangan ialah senarai fail yang dibaca.

Berikut ialah contoh kod yang menggunakan fs.readdirSync() untuk membaca direktori fail:

const fs = require('fs');
const path = './filedir';//目录路径

try {
    const files = fs.readdirSync(path);
    console.log('读取到的文件列表:', files);
} catch (err) {
    console.error('读取目录出错:', err);
}
Salin selepas log masuk

Jalankan kod sampel, konsol juga akan mengeluarkan nama fail dan subdirektori dalam fail direktori. Perlu diingat bahawa menggunakan kaedah fs.readdirSync() akan menyekat gelung peristiwa Node.js.

  1. fs.stat()

fs.stat() kaedah digunakan untuk mendapatkan maklumat status fail atau direktori, termasuk saiz fail, masa pengubahsuaian, akses masa, dsb. Parameter pertama kaedah ini ialah laluan fail untuk mendapatkan maklumat status Parameter kedua ialah fungsi panggil balik objek.

Berikut ialah contoh kod yang menggunakan fs.stat() untuk membaca status fail:

const fs = require('fs');
const path = './filedir';//文件路径

fs.stat(path, function(err, stats) {
    if (err) {
        console.error('获取文件状态出错:', err);
        return;
    }

    console.log('文件大小:', stats.size);
    console.log('修改时间:', stats.mtime);
    console.log('访问时间:', stats.atime);
});
Salin selepas log masuk

Jalankan kod sampel ini, konsol akan mengeluarkan saiz fail, masa pengubahsuaian, masa akses dan maklumat lain. Perlu diingat bahawa kaedah fs.stat() juga tidak segerak dan memerlukan fungsi panggil balik untuk mendapatkan keputusan.

Ringkasnya, menggunakan modul fs Node.js untuk membaca direktori fail memerlukan penggunaan kaedah fs.readdir(), fs.readdirSync() dan fs.stat() Pilih kaedah yang sepadan mengikut kepada keperluan sebenar. Apabila menggunakan kaedah ini, kemungkinan mesej ralat perlu dikendalikan untuk memastikan kestabilan dan kebolehpercayaan program.

Atas ialah kandungan terperinci Bagaimana untuk membaca direktori fail dalam nodejs. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

sumber:php.cn
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan