2012-05-10 30 views
5

thể trùng lặp:
Import and Export Excel - What is the best library?xuất khẩu vượt trội C#

Đó là cách tốt nhất để xuất khẩu một dữ liệu DataTable vào file excel (.xlsx)? Lưu ý rằng tôi muốn xuất dữ liệu sang định dạng .xlsx vì tôi có nhiều hơn 65 nghìn hàng trong bảng dữ liệu.

Rất cám ơn trước.

+0

Chỉ có thể xuất dưới dạng tab được phân tách hoặc csv. Excel rất giỏi đọc chúng. – joshp

+0

tham khảo http://stackoverflow.com/questions/3283204/convert-datatable-to-excel-2007-xlsx –

+2

Tôi đã xuất bản một thư viện hoàn toàn miễn phí để thực hiện việc này: http://www.mikesknowledgebase.com/pages/ CSharp/ExportToExcel.htm Nó sử dụng thư viện OpenXML để tạo một tệp Excel thực, và tốt nhất là nó chỉ cần một dòng mã. Tất cả mã nguồn C# & VB.Net + demo được cung cấp. –

Trả lời

0

Tôi đề nghị bạn xuất vào tập tin CSV vì tập tin CSV không có hạn chế ....

+0

Có CSV là lựa chọn tốt nhất nhưng .. Yêu cầu của khách hàng :-( –

12

Gần đây tôi đã thực hiện điều này bằng EPPlus, một thư viện mã nguồn mở có sẵn trên CodePlex.

Đồng nghiệp của tôi Zeeshan đã viết several blog posts on how to use EPPlus, bao gồm cả mã mẫu. Một nơi tốt để bắt đầu sẽ là creating reports in Excel 2007 using EPPlus, giải thích chi tiết cách tạo, điền và định dạng bảng tính.

+1

EPPLus rất tuyệt - rất nhanh và sạch sẽ – weismat

0

Đối với tôi, có vẻ như cách dễ nhất là sử dụng các thành phần Office Interop.

Một cách khác có thể là sử dụng trình điều khiển cơ sở dữ liệu JET như được mô tả here, nhưng nó sẽ phải được googled liệu XLSX có được hỗ trợ bởi phương pháp đó hay không.

+1

Văn phòng Interop dựa trên COM - nó rất chậm nếu bạn có nhiều dòng như mọi ô là COM – weismat

+0

Điều đó có thể đúng, nhưng mặt khác, bạn có quyền truy cập đầy đủ vào chức năng của Excel, tuy nhiên, yêu cầu là Excel thực sự cần phải được cài đặt trên máy, sử dụng trình điều khiển ODBC không có yêu cầu này. –

Các vấn đề liên quan