Đọc dòng đầu tiên của tệp JavaScript

Trong Khoa học máy tính, tệp là tài nguyên được sử dụng để ghi dữ liệu một cách riêng biệt trong thiết bị lưu trữ của máy tính. Nút. js không ghi đè điều này theo bất kỳ cách nào và hoạt động với mọi thứ được coi là tệp trong hệ thống tệp của bạn

Đọc tệp và tài nguyên có nhiều cách sử dụng

  • Thống kê, phân tích và báo cáo
  • Học máy
  • Xử lý các tệp văn bản hoặc nhật ký lớn

Đôi khi, những tệp này có thể lớn một cách vô lý, với hàng gigabyte hoặc terabyte được lưu trữ và việc đọc toàn bộ chúng là không hiệu quả

Khả năng đọc từng dòng tệp cho chúng tôi khả năng chỉ tìm kiếm thông tin có liên quan và dừng tìm kiếm khi chúng tôi đã tìm thấy những gì chúng tôi đang tìm kiếm. Nó cũng cho phép chúng tôi chia dữ liệu thành các phần hợp lý, chẳng hạn như nếu tệp có định dạng CSV

Readline [từ v0. 12 trở đi]

Nút. js có mô-đun gốc để đọc các tệp cho phép chúng tôi đọc từng dòng. Nó đã được thêm vào năm 2015 và được dùng để đọc từ bất kỳ dòng

const fs = require['fs'];
2 nào mỗi lần một dòng

Thực tế này làm cho nó trở thành một tùy chọn linh hoạt, không chỉ phù hợp với các tệp mà còn phù hợp với cả các đầu vào dòng lệnh như

const fs = require['fs'];
3. Tài liệu về mô-đun
const fs = require['fs'];
4 có thể được tìm thấy tại đây

const fs = require['fs'];
4 là một mô-đun gốc. Bạn không cần phải sử dụng
const fs = require['fs'];
6 cho bất kỳ trình quản lý gói nào khác để thêm nó, chỉ cần
const fs = require['fs'];
7

const readline = require['readline'];

và bạn tốt để đi

Vì phương thức

const fs = require['fs'];
4 phải được cung cấp cùng với một luồng, trước tiên chúng ta phải tạo nó bằng một mô-đun gốc khác -
const fs = require['fs'];
9

const fs = require['fs'];

Bước tiếp theo là tạo đối tượng sẽ đọc từ luồng bằng hàm

const fs = require['fs'];
00

const fs = require['fs'];
0

Đảm bảo rằng bạn thay thế

const fs = require['fs'];
01 bằng đường dẫn thực tới một tệp trong hệ thống tệp của bạn

Khi quá trình chuẩn bị hoàn tất - việc đọc từng dòng tệp và in nội dung của nó ra bảng điều khiển có thể được thực hiện bằng cách

const fs = require['fs'];
3

Về cơ bản, ở đây chúng ta đang nói rằng bất cứ khi nào sự kiện

const fs = require['fs'];
02 xảy ra trong
const fs = require['fs'];
03, nó sẽ gọi hàm của chúng ta và truyền cho nó nội dung được đọc từ luồng. Trong trường hợp của chúng tôi, chúng tôi không muốn phức tạp hóa mọi thứ và chỉ cần in nó ra bàn điều khiển

đầu đọc dòng

Sau phần giải thích chi tiết về cách bạn có thể đọc từng dòng tệp bằng nút gốc. js, hãy xem phiên bản ngắn hơn của nó bằng cách sử dụng mô-đun trình đọc dòng nguồn mở từ npm

Vì đây là một mô-đun không phải bản địa, chúng tôi cần đảm bảo rằng chúng tôi đã khởi tạo dự án npm theo cách phù hợp với

const fs = require['fs'];
04 và sau đó cài đặt nó

const fs = require['fs'];
7

Điều này sẽ cài đặt phần phụ thuộc và thêm nó vào tệp

const fs = require['fs'];
05

Sau khi hoàn tất, việc đọc tệp theo từng dòng chỉ tương tự như ví dụ trước mà không cần tạo

const fs = require['fs'];
03 ở giữa

Hãy xem hướng dẫn thực hành, thực tế của chúng tôi để học Git, với các phương pháp hay nhất, tiêu chuẩn được ngành chấp nhận và bao gồm bảng gian lận. Dừng các lệnh Git trên Google và thực sự tìm hiểu nó

const fs = require['fs'];
0

Một tính năng khá hữu ích ở đây là dừng đọc khi một số điều kiện trở thành sự thật. Điều này đạt được bằng cách trả lại

const fs = require['fs'];
07 đơn giản từ chức năng gọi lại

Ví dụ: chúng tôi có thể đọc từng dòng một tệp cho đến khi chúng tôi tìm thấy một dòng có từ "STOP" trong đó

Có một cách tiếp cận hơi khác, sử dụng hai lệnh gọi lại lồng nhau và cú pháp có vẻ tự nhiên hơn đối với các nhà phát triển Java ngoài kia

const fs = require['fs'];
2

Ở đây, chúng tôi đang sử dụng chức năng

const fs = require['fs'];
08, chức năng này không cung cấp cho chúng tôi các dòng từ một tệp ngay lập tức, nhưng nó cung cấp cho chúng tôi một
const fs = require['fs'];
09. Nó có bộ chức năng riêng như
const fs = require['fs'];
30 và
const fs = require['fs'];
31 cho phép chúng tôi kiểm soát nhiều hơn một chút đối với quá trình đọc từng dòng tệp trong Node. js

N-readlines

Một cú pháp khác được cung cấp bởi mô-đun npm

const fs = require['fs'];
32

Hãy cài đặt nó

const fs = require['fs'];
8

Và yêu cầu nó

const fs = require['fs'];
9

Để có thể đọc từ một tệp, chúng ta nên tạo một đối tượng mới, cung cấp đường dẫn đến tệp của chúng tôi làm đối số

const fs = require['fs'];
0

Việc lấy các dòng từ tệp được thực hiện bằng cách gọi hàm

const fs = require['fs'];
33

const fs = require['fs'];
0

Một chức năng thú vị của mô-đun

const fs = require['fs'];
32 là
const fs = require['fs'];
35. Nó đặt lại con trỏ và bắt đầu quá trình đọc từ đầu tệp

Ghi chú. Nó chỉ hoạt động nếu không đạt được kết thúc

Lỗi thường gặp

Một lỗi phổ biến khi đọc từng dòng tệp trong Node. js đang đọc toàn bộ tệp vào bộ nhớ và sau đó chia nhỏ nội dung của nó bằng cách ngắt dòng

Đây là một ví dụ không chính xác có thể làm quá tải hệ thống của bạn nếu bạn cung cấp cho nó một tệp đủ lớn

const fs = require['fs'];
1

Thoạt nhìn, có vẻ như đầu ra giống nhau đối với phương pháp này cũng như đối với các phương pháp trước đó và trên thực tế, nó hoạt động tốt đối với các tệp nhỏ. Nhưng hãy tiếp tục và thử làm việc với một công ty lớn. Đó chắc chắn không phải là thứ bạn muốn thấy trong hệ thống sản xuất của mình

Phần kết luận

Có nhiều cách để đọc từng dòng tệp trong Node. js và việc lựa chọn cách tiếp cận phù hợp hoàn toàn là quyết định của lập trình viên

Bạn nên nghĩ đến kích thước của các tệp bạn định xử lý, các yêu cầu về hiệu suất, kiểu mã và các mô-đun đã có trong dự án. Đảm bảo kiểm tra một số trường hợp góc như tệp lớn, trống hoặc không tồn tại và bạn sẽ thấy ổn với bất kỳ ví dụ nào được cung cấp

Làm cách nào để chỉ đọc dòng đầu tiên của tệp trong JavaScript?

Ví dụ. Đọc Dòng đầu tiên bằng cách sử dụng readlines[] . readlines[] sử dụng kỹ thuật cắt lát. Như bạn có thể thấy trong ví dụ bên dưới, dòng đầu tiên[0].

Làm cách nào để đọc từng dòng tệp JavaScript?

Trong JavaScript, phương thức tích hợp sẵn FileReader[] cùng với mô-đun đường đọc có thể được sử dụng để đọc từng dòng tệp. Phương thức FileReader[] đọc nội dung của các tệp được lưu trữ trên hệ thống cục bộ. Hơn nữa, mô-đun readline thực hiện việc đọc nội dung. Cả hai phương pháp này đều yêu cầu nguồn của tệp.

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

Phương pháp 1. Sử dụng Mô-đun Readline . Readline là một mô-đun riêng của Node. js, nó được phát triển đặc biệt để đọc từng dòng nội dung từ bất kỳ luồng nào có thể đọc được. Nó có thể được sử dụng để đọc dữ liệu từ dòng lệnh. const readline = require['readline'];

Làm cách nào để đọc nội dung của tệp trong JavaScript?

Để đọc tệp, sử dụng FileReader , cho phép bạn đọc nội dung của đối tượng Tệp vào bộ nhớ. Bạn có thể hướng dẫn FileReader đọc tệp dưới dạng bộ đệm mảng, URL dữ liệu hoặc văn bản. // Kiểm tra xem file có phải là ảnh không.

Chủ Đề