Phân Tích CSV bằng JavaScript
Papa Parse là trình phân tích CSV (hoặc văn bản giới hạn) nhanh nhất trong trình duyệt cho JavaScript. Nó đáng tin cậy và chính xác theo RFC 4180, và nó đi kèm với những tính năng sau đây:
- Dễ sử dụng
- Phân tích trực tiếp các tệp CSV (trong máy hoặc qua mạng)
- Chế độ nhanh
- Luồng tệp lớn (thậm chí qua HTTP)
- Phân tích ngược (chuyển đổi JSON thành CSV)
- Tự động phát hiện dấu phân cách
- Luồng làm việc để giữ trang web của bạn phản ứng
- Hỗ trợ hàng tiêu đề
- Tạm dừng, tiếp tục, hủy
- Có thể chuyển đổi số và boolean thành kiểu dữ liệu của họ
- Tích hợp jQuery tùy chọn để lấy tệp từ các phần tử
<input type="file">
- Một trong những trình phân tích duy nhất xử lý đúng dấu xuống dòng và dấu ngoặc kép
Papa Parse không có phụ thuộc – thậm chí không có jQuery.
Cài Đặt
papaparse có sẵn trên npm. Nó có thể được cài đặt bằng lệnh sau đây:
npm install papaparse
Nếu bạn không muốn sử dụng npm, papaparse.min.js có thể được tải xuống và tích hợp vào nguồn dự án của bạn.
Sử Dụng
import Papa from 'papaparse';
Papa.parse(file, config);
const csv = Papa.unparse(data[, config]);
Trang Chủ & Demo
Để tìm hiểu cách sử dụng Papa Parse:
Trang web được lưu trữ trên Github Pages. Nội dung của nó cũng được bao gồm trong thư mục tài liệu của kho lưu trữ này. Nếu bạn muốn đóng góp vào nó, chỉ cần sao chép phiên bản chính của kho lưu trữ này và mở một yêu cầu kéo.
Papa Parse cho Node
Papa Parse có thể phân tích một Readable Stream thay vì một File khi sử dụng trong môi trường Node.js (ngoài các chuỗi thông thường). Trong chế độ này, encoding
nếu được chỉ định, phải là một mã ký tự được hỗ trợ bởi Node. Các tùy chọn cấu hình Papa.LocalChunkSize
, Papa.RemoteChunkSize
, download
, withCredentials
và worker
không khả dụng.
Papa Parse cũng có thể phân tích theo kiểu luồng node, từ đó sử dụng .pipe
được cung cấp. Đơn giản là kết nối Readable Stream với luồng trả về từ Papa.parse(Papa.NODE_STREAM_INPUT, options)
. Các tùy chọn cấu hình Papa.LocalChunkSize
, Papa.RemoteChunkSize
, download
, withCredentials
, worker
, step
, và complete
không khả dụng. Để đăng ký một hàm gọi lại với luồng để xử lý dữ liệu, sử dụng sự kiện data
như sau: stream.on('data', callback)
và để thông báo về kết thúc luồng, sử dụng sự kiện ‘end’ như sau: stream.on('end', callback)
.
Bắt Đầu
Để biết hướng dẫn sử dụng, hãy xem homepage, và để biết thêm chi tiết, xem documentation.
Kiểm Tra
Papa Parse đang được kiểm tra. Tải xuống kho lưu trữ này, chạy npm install
, sau đó npm test
để chạy các bài kiểm tra.
Đóng Góp
Để thảo luận về một tính năng mới hoặc đặt câu hỏi, hãy mở một vấn đề (issue). Để sửa một lỗi, hãy gửi một yêu cầu kéo (pull request) để được ghi nhận với contributors! Hãy nhớ rằng, một yêu cầu kéo, kèm theo bài kiểm tra, là tốt nhất. Bạn cũng có thể thảo luận trên Twitter với #PapaParse hoặc trực tiếp với tôi, @mholt6.
Nếu bạn đóng góp một bản vá, đảm bảo bộ kiểm tra chạy đúng. Chúng tôi chạy tích hợp liên tục trên mỗi yêu cầu kéo và sẽ không chấp nhận một bản vá làm hỏng các bài kiểm tra.
Chi Tiết Tải Xuống:
Tác Giả: mholt
Mã Nguồn: https://github.com/mholt/PapaParse
Giấy Phép: MIT license