Cách đọc và ghi tệp văn bản trong javascript
Chọn và tương tác với các tệp trên thiết bị cục bộ của người dùng là một trong những tính năng được sử dụng phổ biến nhất trên web. Nó cho phép người dùng chọn tệp và tải chúng lên máy chủ, ví dụ: tải ảnh lên hoặc gửi tài liệu thuế, v.v. Tuy nhiên, nó cũng cho phép các trang web đọc và thao tác với chúng mà không cần phải truyền dữ liệu qua mạng Show
API truy cập hệ thống tệp hiện đạiAPI truy cập hệ thống tệp cung cấp một cách dễ dàng để đọc và ghi vào tệp và thư mục trên hệ thống cục bộ của người dùng. Nó hiện khả dụng trong hầu hết các trình duyệt dựa trên Chromium như Chrome hoặc Edge. Để tìm hiểu thêm về nó, hãy xem bài viết API truy cập hệ thống tệp Vì API truy cập hệ thống tệp chưa tương thích với tất cả các trình duyệt, hãy xem browser-fs-access, một thư viện trợ giúp sử dụng API mới ở bất cứ đâu có sẵn, nhưng quay lại các cách tiếp cận cũ khi không có Làm việc với các tệp, cách cổ điểnHướng dẫn này chỉ cho bạn cách
Chọn tệp tinphần tử đầu vào HTMLCách dễ nhất để người dùng chọn tệp là sử dụng phần tử 0. Mỗi mục trong 0 là một đối tượng 2
Kiểm tra xem phương pháp này có phải là giải pháp thay thế khả thi cho trường hợp sử dụng của bạn hay không, vì phương pháp này cũng cung cấp cho bạn một trình xử lý tệp để bạn có thể ghi lại vào tệp, ngoài việc đọc. Phương pháp này có thể được Ví dụ này cho phép người dùng chọn nhiều tệp bằng cách sử dụng giao diện người dùng chọn tệp tích hợp trong hệ điều hành của họ, sau đó ghi nhật ký từng tệp đã chọn vào bảng điều khiển Giới hạn các loại tệp người dùng có thể chọnTrong một số trường hợp, bạn có thể muốn giới hạn các loại tệp mà người dùng có thể chọn. Ví dụ: một ứng dụng chỉnh sửa hình ảnh chỉ nên chấp nhận hình ảnh, không chấp nhận tệp văn bản. Để làm điều đó, hãy thêm một thuộc tính vào phần tử đầu vào để chỉ định loại tệp nào được chấp nhận
Kéo và thả tùy chỉnhTrong một số trình duyệt, phần tử Kiểm tra xem phương pháp này có phải là giải pháp thay thế khả thi cho trường hợp sử dụng của bạn hay không, vì phương pháp này cũng cung cấp cho bạn một trình xử lý tệp để bạn có thể ghi lại vào tệp, ngoài việc đọc Chọn khu vực thả của bạnBề mặt thả của bạn phụ thuộc vào thiết kế ứng dụng của bạn. Bạn có thể chỉ muốn một phần của cửa sổ là bề mặt thả xuống hoặc có khả năng là toàn bộ cửa sổ Squoosh cho phép người dùng kéo và thả hình ảnh vào bất kỳ đâu trong cửa sổ và nhấp vào chọn hình ảnh sẽ gọi phần tử Xác định khu vực thảĐể cho phép một phần tử trở thành vùng kéo và thả, bạn cần lắng nghe hai sự kiện, 9 và 0. Sự kiện 9 cập nhật giao diện người dùng của trình duyệt để chỉ ra một cách trực quan rằng hành động kéo và thả đang tạo một bản sao của tệp. Sự kiện 0 được kích hoạt sau khi người dùng thả các tệp lên bề mặt. Tương tự với phần tử đầu vào, bạn có thể truy cập danh sách các tệp từ 3, là đối tượng 0. Mỗi mục trong 0 là một đối tượng 2
7 và 8 dừng hành vi mặc định của trình duyệt và thay vào đó cho phép mã của bạn chạy. Nếu không có chúng, trình duyệt sẽ điều hướng khỏi trang của bạn và mở các tệp mà người dùng đã thả vào cửa sổ trình duyệtKiểm tra Kéo và thả tùy chỉnh để xem minh họa trực tiếp Còn thư mục thì sao?Thật không may, ngày nay không có cách nào tốt để truy cập một thư mục Thuộc tính 9 trên phần tử cho phép người dùng chọn một hoặc nhiều thư mục. Nó ngoại trừ Firefox dành cho AndroidKiểm tra xem phương thức này có phải là một giải pháp thay thế khả thi cho trường hợp sử dụng của bạn hay không, vì nó cũng cung cấp cho bạn một điều khiển thư mục để bạn có thể ghi lại thư mục, ngoài việc đọc. Phương pháp này có thể được Nếu tính năng kéo và thả được bật, người dùng có thể thử kéo một thư mục vào vùng thả. Khi sự kiện drop được kích hoạt, nó sẽ bao gồm một đối tượng 2 cho thư mục, nhưng không cung cấp quyền truy cập vào bất kỳ tệp nào trong thư mụcĐọc siêu dữ liệu tệpĐối tượng 2 chứa siêu dữ liệu về tệp. Hầu hết các trình duyệt cung cấp tên tệp, kích thước của tệp và loại MIME, mặc dù tùy thuộc vào nền tảng, các trình duyệt khác nhau có thể cung cấp thông tin khác hoặc bổ sung
Bạn có thể thấy điều này đang hoạt động trong bản demo 4Đọc nội dung của một tập tinĐể đọc tệp, hãy sử dụng 5, cho phép bạn đọc nội dung của đối tượng 2 vào bộ nhớ. Bạn có thể hướng dẫn 5 đọc tệp dưới dạng bộ đệm mảng, URL dữ liệu hoặc văn bản
Ví dụ trên đọc một 2 do người dùng cung cấp, sau đó chuyển đổi nó thành URL dữ liệu và sử dụng URL dữ liệu đó để hiển thị hình ảnh trong phần tử 9. Hãy xem bản demo của 0 để biết cách xác minh rằng người dùng đã chọn một tệp hình ảnhTheo dõi tiến trình của một tập tin đã đọcKhi đọc các tệp lớn, có thể hữu ích khi cung cấp một số UX để cho biết quá trình đọc đã tiến triển đến đâu. Đối với điều đó, hãy sử dụng sự kiện 1 được cung cấp bởi 5. Sự kiện 1 cung cấp hai thuộc tính, 4 (số lượng đọc) và 5 (số lượng đọc)
Làm cách nào để ghi vào tệp văn bản bằng JavaScript?Phương thức writeFile() từ gói “fs” . writeFile(pathOfFile, dataToWrite, callbackFunction); const fs = yêu cầu("fs"); const stringToWrite = "CHÀO TÔI ĐANG VIẾT VÀO TẬP TIN"; fs. writeFile(". /kiểm tra. txt", stringToWrite, (err) => {. const fs = yêu cầu("fs"); Làm cách nào để đọc một 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.
Làm cách nào để mở tệp văn bản trong JavaScript?Đây là ví dụ đơn giản để đọc tệp văn bản bằng JavaScript. . chức năng đọc() var txtFile = new XMLHttpRequest(); txtFile. onreadystatechange = function() nếu (txtFile. trạng thái sẵn sàng === 4) // Đảm bảo rằng tài liệu đã sẵn sàng để phân tích cú pháp |