Hướng dẫn what is the use of filereader in javascript? - việc sử dụng trình đọc tệp trong javascript là gì?

Một đối tượng tệp kế thừa từ Blob và được mở rộng với các khả năng liên quan đến hệ thống tập tin.

Có hai cách để có được nó.

Đầu tiên, có một hàm tạo, tương tự như Blob:

new File(fileParts, fileName, [options])

  • fileParts - là một mảng các giá trị Blob/Buffersource/String. – is an array of Blob/BufferSource/String values.
  • fileName - Chuỗi tên tệp. – file name string.
  • options - Đối tượng tùy chọn: – optional object:
    • lastModified - dấu thời gian (ngày nguyên) của sửa đổi cuối cùng. – the timestamp (integer date) of last modification.

Thứ hai, chúng ta thường xuyên nhận được một tệp từ



0 hoặc kéo các giao diện trình duyệt hoặc các giao diện trình duyệt khác. Trong trường hợp đó, tệp nhận được thông tin này từ HĐH.



1 kế thừa từ Blob, các đối tượng


1 có cùng các thuộc tính, cộng với:

  • 
    
    
    4 - Tên tệp,
  • lastModified - dấu thời gian của sửa đổi cuối cùng.

Đó là cách mà chúng ta có thể nhận được một đối tượng



1 từ


0:



Xin lưu ý:

Đầu vào có thể chọn nhiều tệp, vì vậy



8 là một đối tượng giống như mảng với chúng. Ở đây chúng tôi chỉ có một tệp, vì vậy chúng tôi chỉ cần


9.

Filereader

Filereader là một đối tượng có mục đích duy nhất là đọc dữ liệu từ các đối tượng Blob (và do đó



1).

Nó cung cấp dữ liệu bằng các sự kiện, vì đọc từ đĩa có thể mất thời gian.

Người xây dựng:

let reader = new FileReader(); // no arguments

Các phương pháp chính:

  • let reader = new FileReader(); // no arguments
    2 - Đọc dữ liệu ở định dạng nhị phân
    let reader = new FileReader(); // no arguments
    3.
    – read the data in binary format
    let reader = new FileReader(); // no arguments
    3.
  • let reader = new FileReader(); // no arguments
    4 - Đọc dữ liệu dưới dạng chuỗi văn bản với mã hóa đã cho (
    let reader = new FileReader(); // no arguments
    5 theo mặc định).
    – read the data as a text string with the given encoding (
    let reader = new FileReader(); // no arguments
    5 by default).
  • let reader = new FileReader(); // no arguments
    6 - Đọc dữ liệu nhị phân và mã hóa nó dưới dạng URL dữ liệu Base64.
    – read the binary data and encode it as base64 data url.
  • let reader = new FileReader(); // no arguments
    7 - ​​Hủy thao tác.
    – cancel the operation.

Việc lựa chọn phương pháp

let reader = new FileReader(); // no arguments
8 phụ thuộc vào định dạng chúng tôi thích, cách chúng tôi sẽ sử dụng dữ liệu.

  • let reader = new FileReader(); // no arguments
    9-Đối với các tệp nhị phân, để thực hiện các hoạt động nhị phân cấp thấp. Đối với các hoạt động cấp cao, như cắt,
    
    
    
    1 kế thừa từ Blob, vì vậy chúng tôi có thể gọi chúng trực tiếp mà không cần đọc.
  • 
    
    
    2 - Đối với các tệp văn bản, khi chúng tôi muốn có một chuỗi.
  • 
    
    
    3 - Khi chúng tôi muốn sử dụng dữ liệu này trong
    
    
    
    4 cho
    
    
    
    5 hoặc thẻ khác. Có một giải pháp thay thế để đọc một tệp cho điều đó, như đã thảo luận trong chương Blob:
    
    
    
    6.

Khi đọc sách, có những sự kiện:

  • 
    
    
    7 - Đang tải bắt đầu.
  • 
    
    
    8 - Xảy ra trong khi đọc.
  • 
    
    
    9 - Không có lỗi, đọc Hoàn thành.
  • Blob0 -
    let reader = new FileReader(); // no arguments
    7 được gọi.
  • Blob2 - Đã xảy ra lỗi.
  • Blob3 - Đọc kết thúc với thành công hoặc thất bại.

Khi đọc kết thúc, chúng ta có thể truy cập kết quả như:

  • Blob4 là kết quả (nếu thành công)
  • Blob5 là lỗi (nếu không thành công).

Các sự kiện được sử dụng rộng rãi nhất là chắc chắn



9 và Blob2.

Ở đây, một ví dụ về việc đọc một tập tin:



Blob8 cho đốm màu

Như đã đề cập trong chương Blob, Blob8 có thể đọc không chỉ các tệp, mà là bất kỳ đốm màu nào.

Chúng ta có thể sử dụng nó để chuyển đổi một Blob sang định dạng khác:

  • let reader = new FileReader(); // no arguments
    2 - đến
    let reader = new FileReader(); // no arguments
    3,
  • let reader = new FileReader(); // no arguments
    4 - để chuỗi (một giải pháp thay thế cho Blob3),
  • let reader = new FileReader(); // no arguments
    6 - đến URL dữ liệu Base64.

Blob5 có sẵn bên trong nhân viên web

Đối với nhân viên web, cũng tồn tại một biến thể đồng bộ là Blob8, được gọi là Filereadersync.

Các phương thức đọc của nó

let reader = new FileReader(); // no arguments
8 không tạo ra các sự kiện, mà là trả về kết quả, như các chức năng thường xuyên.

Mặc dù vậy, chỉ có bên trong một nhân viên web, bởi vì sự chậm trễ trong các cuộc gọi đồng bộ, có thể đọc được từ các tệp, trong nhân viên web ít quan trọng hơn. Chúng không ảnh hưởng đến trang.

Bản tóm tắt



1 đối tượng kế thừa từ Blob.

Ngoài các phương thức và thuộc tính Blob, các đối tượng



1 cũng có các thuộc tính


4 và lastModified, cộng với khả năng nội bộ để đọc từ hệ thống tệp. Chúng tôi thường nhận được các đối tượng


1 từ đầu vào của người dùng, như fileParts5 hoặc kéo các sự kiện kéo dài (fileParts6).

Blob8 Các đối tượng có thể đọc từ một tệp hoặc một đốm màu, ở một trong ba định dạng:

  • Chuỗi (
    
    
    
    2).
  • let reader = new FileReader(); // no arguments
    3 (
    let reader = new FileReader(); // no arguments
    9).
  • URL dữ liệu, cơ sở-64 được mã hóa (
    
    
    
    3).

Trong nhiều trường hợp, chúng tôi không phải đọc nội dung tệp. Giống như chúng tôi đã làm với Blobs, chúng tôi có thể tạo một URL ngắn với



6 và gán nó cho fileName3 hoặc fileName4. Bằng cách này, tệp có thể được tải xuống hoặc hiển thị dưới dạng hình ảnh, như một phần của vải, v.v.

Và nếu chúng tôi sẽ gửi một



1 qua mạng, thì đó cũng dễ dàng: API mạng như fileName6 hoặc fileName7 tự nhiên chấp nhận các đối tượng


1.

Làm cách nào để sử dụng Filereader?

Tạo một filereader..
Sử dụng tên của tệp. Filereader input = new Filereader (tên chuỗi); Ở đây, chúng tôi đã tạo một đầu đọc tệp sẽ được liên kết với tệp được chỉ định bởi tên ..
Sử dụng một đối tượng của tệp. Filereader input = new Filereader (fileObj) ;.

Làm thế nào tôi có thể nhận được kết quả của Filereader?

Nó hoạt động bằng cách tạo một đối tượng Filereader và tạo trình nghe cho các sự kiện tải sao cho khi đó tệp được đọc, kết quả được lấy và chuyển đến chức năng gọi lại được cung cấp để đọc ().Nội dung được xử lý dưới dạng dữ liệu văn bản thô.creating a FileReader object and creating a listener for load events such that when then file is read, the result is obtained and passed to the callback function provided to read() . The content is handled as raw text data.

Hàm readastext () trả về gì?

Phương thức readastext () được sử dụng để đọc nội dung của blob hoặc tệp được chỉ định.Khi hoạt động đọc hoàn tất, ReadyState được thay đổi thành xong, sự kiện Loadend được kích hoạt và thuộc tính kết quả chứa nội dung của tệp dưới dạng chuỗi văn bản.Lưu ý: Blob.read the contents of the specified Blob or File . When the read operation is complete, the readyState is changed to DONE , the loadend event is triggered, and the result property contains the contents of the file as a text string. Note: The Blob.

Người đọc onload là gì?

Người làm phim.Thuộc tính Onload chứa một trình xử lý sự kiện được thực hiện khi sự kiện tải được kích hoạt, khi nội dung đọc với ReadAsArrayBuffer, ReadAsbinaryString, ReadasDataurl hoặc Readastext có sẵn.contains an event handler executed when the load event is fired, when content read with readAsArrayBuffer, readAsBinaryString, readAsDataURL or readAsText is available.