JavaScript lấy nội dung của tệp
Cách đơn giản nhất để đọc tệp trong Node. js là sử dụng phương thức Show
Ngoài ra, bạn có thể sử dụng phiên bản đồng bộ
Bạn cũng có thể sử dụng phương pháp
Cả ba Điều này có nghĩa là các tệp lớn sẽ có tác động lớn đến mức tiêu thụ bộ nhớ và tốc độ thực thi chương trình của bạn Đoạn mã giả định rằng có một tệp Cấu trúc thư mục trong ví dụ giả định rằng tệp Phương thức đọc không đồng bộ nội dung của tệp được cung cấp Nếu bạn không cung cấp giá trị cho tham số Phương thức trả về một lời hứa giải quyết với nội dung của tệp, vì vậy chúng ta phải Chúng tôi đã sử dụng Chuỗi. phương pháp phân tách để phân chia nội dung trên mỗi ký tự dòng mới Chúng tôi đã chuyển một biểu thức chính quy cho phương thức
Dấu gạch chéo về phía trước Chúng tôi muốn thay thế cả Ví dụ: Windows sử dụng Dấu chấm hỏi Phương thức Ngoài ra, bạn có thể đọc tệp đồng bộ Đọc tệp văn bản vào Mảng một cách đồng bộ bằng cách sử dụng Nút. jsSử dụng phương pháp Phương thức sẽ trả về nội dung của tệp, mà chúng ta có thể phân chia trên mỗi ký tự dòng mới để nhận được một chuỗi các chuỗi Hàm từ ví dụ đầu tiên đọc nội dung của tệp một cách đồng bộ Phương thức lấy đường dẫn đến tệp làm tham số đầu tiên và Phương thức trả về nội dung của đường dẫn được cung cấp Nếu bạn bỏ qua tham số Đọc tệp văn bản vào Mảng không đồng bộ bằng cách sử dụng. sau đó()Mẫu mã đầu tiên đọc một tệp văn bản thành một mảng không đồng bộ bằng cách sử dụng Nếu bạn thích sử dụng cú pháp Mẫu mã đạt được kết quả tương tự nhưng sử dụng cú pháp Sử dụng API tệp, nội dung web có thể yêu cầu người dùng chọn các tệp cục bộ và sau đó đọc nội dung của các tệp đó. Lựa chọn này có thể được thực hiện bằng cách sử dụng phần tử HTML 4 hoặc bằng cách kéo và thảHãy xem xét HTML này
API tệp cho phép truy cập một đối tượng 5 chứa 6 đại diện cho các tệp do người dùng chọnThuộc tính 7 trên phần tử 8 cho phép người dùng chọn nhiều tệpTruy cập tệp được chọn đầu tiên bằng bộ chọn DOM cổ điển
Cũng có thể (nhưng không bắt buộc) truy cập vào 5 thông qua sự kiện 0. Bạn cần sử dụng 1 để thêm trình xử lý sự kiện 0, như thế này
Đối tượng 5 do DOM cung cấp liệt kê tất cả các tệp được người dùng chọn, mỗi tệp được chỉ định là đối tượng 6. Bạn có thể xác định có bao nhiêu tệp mà người dùng đã chọn bằng cách kiểm tra giá trị của thuộc tính 5 của danh sách tệp
Các đối tượng 6 riêng lẻ có thể được truy xuất bằng cách truy cập danh sách dưới dạng một mảng
Vòng lặp này lặp qua tất cả các tệp trong danh sách tệp Có ba thuộc tính được cung cấp bởi đối tượng 6 có chứa thông tin hữu ích về tệp 8Tên tệp dưới dạng chuỗi chỉ đọc. Đây chỉ là tên tệp và không bao gồm bất kỳ thông tin đường dẫn nào 9Kích thước của tệp tính bằng byte dưới dạng số nguyên 64 bit chỉ đọc 0Loại MIME của tệp dưới dạng chuỗi chỉ đọc hoặc 1 nếu không xác định được loạiVí dụ sau đây cho thấy khả năng sử dụng thuộc tính 9
Bạn có thể ẩn phần tử tệp 3 xấu xí được thừa nhận và hiển thị giao diện của riêng bạn để mở bộ chọn tệp và hiển thị tệp hoặc tệp mà người dùng đã chọn. Bạn có thể thực hiện việc này bằng cách tạo kiểu cho phần tử đầu vào bằng 4 và gọi phương thức 5 trên phần tử 3Hãy xem xét HTML này
Mã xử lý sự kiện 7 có thể trông như thế này
Bạn có thể tạo kiểu cho 8 theo cách bạn muốnĐể cho phép mở bộ chọn tệp mà không cần sử dụng JavaScript (phương thức click()), có thể sử dụng phần tử 9. Lưu ý rằng trong trường hợp này, không được ẩn phần tử đầu vào bằng cách sử dụng 0 (hoặc 1), nếu không, nhãn sẽ không thể truy cập được bằng bàn phím. Thay vào đó, hãy sử dụng kỹ thuật ẩn trực quanHãy xem xét HTML này
và CSS này
Không cần thêm mã JavaScript để gọi 2. Ngoài ra, trong trường hợp này, bạn có thể tạo kiểu cho thành phần nhãn theo ý muốn. Bạn cần cung cấp một gợi ý trực quan về trạng thái tiêu điểm của trường nhập ẩn trên nhãn của nó, có thể là đường viền như minh họa ở trên hoặc màu nền hoặc bóng hộp. (Tại thời điểm viết bài này, Firefox không hiển thị gợi ý trực quan này cho các phần tử 3. )Bạn cũng có thể cho phép người dùng kéo và thả tệp vào ứng dụng web của mình Bước đầu tiên là thiết lập một khu vực thả. Chính xác phần nào trong nội dung của bạn sẽ chấp nhận sự sụt giảm có thể khác nhau tùy thuộc vào thiết kế của ứng dụng của bạn, nhưng việc tạo một phần tử nhận sự kiện giảm là dễ dàng 0Trong ví dụ này, chúng tôi đang chuyển phần tử có ID 4 vào vùng thả của chúng tôi. Điều này được thực hiện bằng cách thêm người nghe cho các sự kiện 5, 6 và 7Chúng tôi thực sự không cần phải làm bất cứ điều gì với các sự kiện 5 và 6 trong trường hợp của chúng tôi, vì vậy cả hai chức năng này đều đơn giản. Họ chỉ dừng truyền bá sự kiện và ngăn hành động mặc định xảy ra 1Điều kỳ diệu thực sự xảy ra trong hàm 0 2Ở đây, chúng tôi truy xuất trường 1 từ sự kiện, kéo danh sách tệp ra khỏi đó, sau đó chuyển trường đó tới 2. Kể từ thời điểm này, việc xử lý các tệp là như nhau cho dù người dùng sử dụng phần tử 8 hay kéo và thảGiả sử bạn đang phát triển trang web chia sẻ ảnh tuyệt vời tiếp theo và muốn sử dụng HTML để hiển thị bản xem trước hình thu nhỏ của hình ảnh trước khi người dùng thực sự tải chúng lên. Bạn có thể thiết lập phần tử đầu vào hoặc vùng thả của mình như đã thảo luận trước đó và yêu cầu họ gọi một hàm, chẳng hạn như hàm 2 bên dưới 3Ở đây, vòng lặp của chúng tôi xử lý các tệp do người dùng chọn sẽ xem xét thuộc tính 0 của từng tệp để xem liệu loại MIME của nó có bắt đầu bằng chuỗi " 6"). Đối với mỗi tệp là một hình ảnh, chúng tôi tạo một phần tử 7 mới. CSS có thể được sử dụng để thiết lập bất kỳ đường viền hoặc bóng đẹp nào và để chỉ định kích thước của hình ảnh, do đó không cần phải thực hiện ở đâyMỗi hình ảnh có lớp CSS 8 được thêm vào, giúp dễ dàng tìm thấy trong cây DOM. Chúng tôi cũng thêm thuộc tính 9 vào mỗi hình ảnh chỉ định 6 cho hình ảnh; . Chúng tôi sử dụng 1 để thêm hình thu nhỏ mới vào khu vực xem trước của tài liệu của chúng tôiTiếp theo, chúng tôi thiết lập 2 để xử lý tải hình ảnh không đồng bộ và gắn nó vào phần tử 7. Sau khi tạo đối tượng 2 mới, chúng tôi thiết lập chức năng 5 của nó và sau đó gọi 6 để bắt đầu thao tác đọc trong nền. Khi toàn bộ nội dung của tệp hình ảnh được tải, chúng sẽ được chuyển đổi thành một URL 7 được chuyển đến lệnh gọi lại 5. Việc triển khai quy trình này của chúng tôi đặt thuộc tính 0 của phần tử 7 cho hình ảnh được tải, dẫn đến hình ảnh xuất hiện trong hình thu nhỏ trên màn hình của người dùngCác phương thức DOM 1 và 2 cho phép bạn tạo các chuỗi URL đơn giản có thể được sử dụng để tham chiếu bất kỳ dữ liệu nào có thể được tham chiếu bằng đối tượng DOM 6, bao gồm các tệp cục bộ trên máy tính của người dùngKhi bạn có một đối tượng 6 mà bạn muốn tham chiếu bằng URL từ HTML, bạn có thể tạo một URL đối tượng cho nó như thế này 4URL đối tượng là một chuỗi xác định đối tượng 6. Mỗi khi bạn gọi 1, một URL đối tượng duy nhất sẽ được tạo ngay cả khi bạn đã tạo một URL đối tượng cho tệp đó rồi. Mỗi trong số này phải được phát hành. Mặc dù chúng được giải phóng tự động khi tài liệu được tải xuống, nhưng nếu trang của bạn sử dụng chúng một cách linh hoạt, bạn nên giải phóng chúng một cách rõ ràng bằng cách gọi 2 5Ví dụ này sử dụng URL đối tượng để hiển thị hình thu nhỏ của hình ảnh. Ngoài ra, nó còn hiển thị thông tin tệp khác bao gồm tên và kích thước của chúng HTML trình bày giao diện trông như thế này 6Điều này thiết lập phần tử tệp 3 của chúng tôi cũng như một liên kết gọi bộ chọn tệp (vì chúng tôi ẩn đầu vào tệp để ngăn giao diện người dùng kém hấp dẫn đó hiển thị). Điều này được giải thích trong phần, cũng như phương thức gọi bộ chọn tệpPhương pháp 2 sau 7Điều này bắt đầu bằng cách tìm nạp URL của 0 với ID 1. Đây là khối mà chúng tôi sẽ chèn danh sách tệp của mình, bao gồm cả hình thu nhỏNếu đối tượng 5 được chuyển đến 2 là 4, chúng tôi đặt HTML bên trong của khối để hiển thị "Không có tệp nào được chọn. ". Mặt khác, chúng tôi bắt đầu xây dựng danh sách tệp của mình, như sau
Đây là bản demo trực tiếp của đoạn mã trên Một điều khác bạn có thể muốn làm là cho phép người dùng tải tệp hoặc tệp đã chọn (chẳng hạn như hình ảnh được chọn bằng ví dụ trước) lên máy chủ. Điều này có thể được thực hiện không đồng bộ rất dễ dàng Tiếp tục với đoạn mã đã tạo hình thu nhỏ trong ví dụ trước, hãy nhớ lại rằng mọi hình ảnh thu nhỏ đều thuộc lớp CSS 8 với 6 tương ứng được đính kèm trong thuộc tính 9. Điều này cho phép chúng tôi chọn tất cả các hình ảnh mà người dùng đã chọn để tải lên bằng cách sử dụng 09, như thế này 8Dòng 2 tìm nạp một 10, được gọi là 11, của tất cả các phần tử trong tài liệu với lớp CSS 8. Trong trường hợp của chúng tôi, đây sẽ là tất cả các hình thu nhỏ của hình ảnh. Khi chúng tôi có danh sách đó, việc lướt qua nó và tạo một phiên bản 13 mới cho mỗi. Mỗi trong số này xử lý tải lên tệp tương ứngHàm 13 chấp nhận hai đầu vào. một phần tử hình ảnh và một tệp để đọc dữ liệu hình ảnh 9Hàm 15 được hiển thị ở trên tạo ra một nhịp đập, được sử dụng để hiển thị thông tin về tiến độ, sau đó tạo một 16 để xử lý việc tải dữ liệu lênTrước khi thực sự chuyển dữ liệu, một số bước chuẩn bị được thực hiện
Ví dụ này, sử dụng PHP ở phía máy chủ và JavaScript ở phía máy khách, minh họa việc tải tệp lên không đồng bộ 0URL đối tượng có thể được sử dụng cho những thứ khác ngoài hình ảnh. Chúng có thể được sử dụng để hiển thị các tệp PDF được nhúng hoặc bất kỳ tài nguyên nào khác mà trình duyệt có thể hiển thị Làm cách nào để lấy nội dung của tệp trong JavaScript?readAsText() để đọc cục bộ. . readAsArrayBuffer(). Đọc nội dung của tệp đầu vào được chỉ định. . readAsBinaryString(). Đọc nội dung của tệp đầu vào được chỉ định. . readAsDataURL(). Đọc nội dung của tệp đầu vào được chỉ định Làm cách nào để đọc nội dung từ tệp văn bản trong JavaScript?Sau khi mô-đun Hệ thống tệp được nhập, việc đọc tệp trong JavaScript có thể được thực hiện bằng cách sử dụng hàm readFile(). . Đường dẫn - Tham số đầu tiên là đường dẫn của tệp thử nghiệm mà từ đó nội dung sẽ được đọc. . Định dạng - Tham số thứ hai là tham số tùy chọn là định dạng của tệp văn bản Làm cách nào để lấy dữ liệu từ tệp văn bản JavaScript?Sử dụng fs. readFileSync() phương thức đọc tệp văn bản thành một mảng trong JavaScript , e. g. const nội dung = readFileSync(tên tệp, 'utf-8'). tách ('\ n'). Phương thức sẽ trả về nội dung của tệp, mà chúng ta có thể phân chia trên mỗi ký tự dòng mới để nhận được một chuỗi các chuỗi.
Làm cách nào để đọc dữ liệu từ tệp HTML trong JavaScript?Để truy cập một phần tử HTML, JavaScript có thể sử dụng tài liệu . phương thức getElementById(id) . |