Làm việc với tệp nodejs

Tương tác với hệ thống tệp là rất quan trọng và khá phổ biến trong bất kỳ ngôn ngữ lập trình nào. NodeJS cung cấp hai mô-đun tích hợp. fs và đường dẫn để tương tác với hệ thống tệp. Mô-đun fs là mô-đun chính để tương tác với hệ thống tệp nhưng mô-đun đường dẫn giống như mô-đun trợ giúp để lấy đường dẫn tệp, nối đường dẫn…

Các bạn đọc like ủng hộ MUO nhé. Khi bạn mua hàng bằng các liên kết trên trang web của chúng tôi, chúng tôi có thể kiếm được hoa hồng liên kết. Đọc thêm

Một trong những tính năng tích hợp của Node. js là thao tác với hệ thống tệp của hệ điều hành bằng mô-đun fs. nút này. js chứa nhiều chức năng hữu ích để làm việc với tệp và thư mục

Các tệp được gọi đơn giản là các đối tượng hoặc khối dữ liệu được lưu trữ lâu dài thường được lưu trữ trên một phương tiện cứng được gọi là đĩa hoặc bộ nhớ. Các tệp có thể thuộc nhiều loại khác nhau, từ tệp văn bản đến tệp hình ảnh, tệp âm thanh, v.v.

Vậy, hệ thống tệp là gì và làm cách nào để bạn có thể dễ dàng tương tác với hệ thống tệp của hệ điều hành trong Node. js?

Hệ thống tệp là gì?

Hệ thống tệp xác định cách hệ điều hành có thể xác định, sắp xếp, lưu trữ và truy cập tệp cùng với các hoạt động khác

Hệ thống tệp của một hệ điều hành cũng thực hiện công việc nhóm các tệp thành các bộ sưu tập được gọi là thư mục hoặc thư mục. Các tệp và thư mục thông thường là những phần phổ biến nhất của hệ thống tệp thường được tương tác với nhiều tệp khác

Một số ví dụ về hệ thống tệp bao gồm Hệ thống tệp công nghệ mới (NTFS), Hệ thống tệp UNIX (UFS) và Hệ thống tệp phân cấp (HFS)

nút là gì. Mô-đun js fs?

nút. js fs module là một thư viện tích hợp được cung cấp bởi Node. js để làm việc với hệ thống tệp của bất kỳ hệ điều hành nào hỗ trợ Node. Mô-đun fs có thể truy cập dễ dàng và là thư viện dành cho các thao tác với tệp như đọc từ tệp hoặc ghi dữ liệu vào tệp trong Node. js

Nó thường được sử dụng với các mô-đun đường dẫn và hệ điều hành để thực hiện các thao tác khác nhau trên tệp. Để sử dụng mô-đun fs trong các chương trình của mình, bạn có thể nhập mô-đun đó vào mã nguồn của mình như được hiển thị trong mã bên dưới

 // CommonJS
const fs = require('fs')

// ES6
import fs from 'fs'

nút là gì. đường dẫn js Mô-đun?

Bạn có thể sử dụng nút. mô-đun đường dẫn js để thao tác đường dẫn tệp. Nó bao gồm các tiện ích để dễ dàng tương tác với các đường dẫn tệp và thư mục. Sử dụng song song các mô-đun fs và đường dẫn để hoàn thành một nhiệm vụ là thông lệ tiêu chuẩn. Điều này là do phần lớn các chức năng của mô-đun fs phụ thuộc vào đường dẫn đến các tệp hoặc thư mục đích để hoạt động

Bạn có thể nhập mô-đun đường dẫn vào mã của mình bằng cú pháp bên dưới

 // CommonJS
const path = require('path')

// ES6
import path from 'path'

Các chức năng phổ biến để truy cập hệ thống tệp trong nút. js

Dưới đây là các Node được sử dụng phổ biến nhất. js fs và các chức năng của mô-đun đường dẫn và cách sử dụng chúng để tương tác với các tệp và thư mục

Làm việc với các đường dẫn

  1. đường dẫn. giải quyết. Đây là chức năng giải quyết một đường dẫn từ danh sách các hướng dẫn đường dẫn được truyền dưới dạng tham số. Ví dụ.
     path.resolve('home', 'projects', 'web');
    // returns /home/projects/web

    path.resolve('home/projects/web', '../mobile');
    // returns /home/projects/mobile
  2. đường dẫn. bình thường hóa. Hàm chuẩn hóa trả về đường dẫn chính xác và chuẩn hóa từ đường dẫn đầu vào đã cho. Ví dụ.
     path.normalize('home/projects/web/../mobile/./code');
    // returns home/projects/mobile/code
  3. đường dẫn. tham gia. Chức năng này xây dựng một đường dẫn ra khỏi một số phân khúc. Ví dụ.
     path.join('home', 'projects', '../', 'movies');
    // returns home/movies
  4. đường dẫn. basename. Hàm tên cơ sở trả về đoạn đường dẫn cuối cùng. Bạn có thể sử dụng nó theo hai cách.
     path.basename('home/projects/web/index.js');
    // returns index.js

    path.basename('home/projects/web/index.js', '.js');
    // removes the extension and returns 'index'
  5. đường dẫn. dirname. Hàm này trả về đường dẫn đến thư mục cuối cùng của một đường dẫn nhất định. Thí dụ.
     path.dirname('home/projects/web/index.js');
    // returns home/projects/web
  6. đường dẫn. tên phụ. Với chức năng này, bạn có thể lấy phần mở rộng của tệp từ một đường dẫn nhất định.
     path.extname('home/projects/web/index.js');
    // returns '.js'

Mở và đóng tệp

  1. fs. mở ra. Đây là chức năng mở hoặc tạo file đồng bộ trong Node. js. Dạng đồng bộ của fs. mở là fs. mởĐồng bộ hóa. fs. mở chấp nhận bốn đối số là đường dẫn tệp, cờ, chế độ mở và hàm gọi lại. Cờ và chế độ mở có giá trị mặc định và bạn có thể tìm hiểu thêm về chúng từ tài liệu. ________số 8_______
  2. fs. Thoát. Tốt nhất là luôn đóng mọi tệp đang mở khi chúng không còn cần thiết nữa. Nút. js có fs. chức năng đóng cho cái này.
     fs.open(filePath, (error, fileDescriptor) => {
        // handle errors, such as 'file/directory does not exist'
        console.log(fileDescriptor);

        // close the file
        fs.close(fileDescriptor, (error) => {
            // handle errors
            console.log('File closed successfully');
        });
    })

Tạo và xóa

  1. fs. mkdir. Điều này hoạt động giống như lệnh mkdir terminal tạo một thư mục mới. Nó nhận một đường dẫn, chế độ (tùy chọn) và chức năng gọi lại làm tham số. Bạn có thể sử dụng nó như thế này.
     // CommonJS
    const path = require('path')

    // ES6
    import path from 'path'
    0
  2. fs. hủy liên kết. Hàm này xóa hoặc xóa tệp tại đường dẫn được truyền dưới dạng đối số. Hãy xem xét ví dụ mã dưới đây.
     // CommonJS
    const path = require('path')

    // ES6
    import path from 'path'
    1
  3. fs. rmdir. Phương pháp này xóa thư mục tại một đường dẫn nhất định. Cách sử dụng nó rất giống với phương thức hủy liên kết.
     // CommonJS
    const path = require('path')

    // ES6
    import path from 'path'
    2

Siêu dữ liệu tệp

  1. fs. tồn tại. Phương thức tồn tại kiểm tra xem tệp tại một đường dẫn nhất định có tồn tại không. Việc thực hiện như sau.
     // CommonJS
    const path = require('path')

    // ES6
    import path from 'path'
    3
  2. fs. thống kê. Đây là một hàm đồng bộ trả về các thuộc tính của tệp. Nó trả về một fs. Đối tượng thống kê hiển thị một số phương thức để truy cập các thuộc tính của tệp. Đây là một ví dụ.
     // CommonJS
    const path = require('path')

    // ES6
    import path from 'path'
    4

Bạn nên sử dụng các phương thức đường dẫn khi làm việc với đường dẫn tệp vì chúng giúp bạn tránh khỏi hành vi không mong muốn trên các nền tảng. nút. js fs và nút. tài liệu đường dẫn js mô tả danh sách đầy đủ các phương thức

Thao tác hệ thống tệp trong nút. js

Tính rộng lớn của mô-đun fs giúp dễ dàng truy cập và tương tác với các tệp trên bất kỳ hệ điều hành nào. Khi bạn sử dụng nó cùng với mô-đun đường dẫn, bạn sẽ mở ra nhiều chức năng hơn và có thể thao tác với hệ thống tệp theo ý muốn

Một lợi thế lớn của Node. js là tính di động của nó. Bạn có thể phát triển ứng dụng của mình trên mọi nền tảng và triển khai chúng ở mọi nơi mà không phải lo lắng về các vấn đề tương thích cơ bản

Làm cách nào để đọc tệp trong nút js?

Ba cách đọc tệp trong nút. .
Đọc tệp theo cách Promise. Cách Hứa hẹn cho phép chúng tôi sử dụng tính năng Javascript không đồng bộ hiện đại - không đồng bộ và chờ đợi. .
Đọc File với cách Callback. Cách tiếp cận cho cách Gọi lại là sử dụng fs. .
Đọc tệp theo cách đồng bộ

API nào được sử dụng để làm việc với tệp trong Nodejs?

Mô-đun fs cung cấp cho chúng tôi API để tương tác với Hệ thống tệp của hệ điều hành (Máy chủ). Mô-đun fs cung cấp API để tương tác với hệ thống tệp của hệ điều hành. Tất cả các hoạt động tệp có thể hoạt động I/O đồng bộ hoặc không đồng bộ.

Làm cách nào để đọc và ghi tệp bằng nodejs?

Bằng cách sử dụng Nút. js module fs thật dễ đọc và ghi vào tệp. .
Bước 1. Nhập nút. js Đường dẫn gói và fs. .
Bước 2. Đọc từ tập tin. .
Bước 3. Nhận tất cả các tệp tên. .
Bước 4. Thực hiện chức năng chính