Giter VIP home page Giter VIP logo

excely's Introduction

image

Excely

一個基於 .NET 6 的套件,用於簡化各種常用資料結構與 Excel、Csv 之間的資料匯出及匯入。

功能

  • 簡單的 API,用最快的速度上手並使用!
  • 完整的參數設定與自定義功能,每個環節都可以客製化。
  • 提供多種 Shader,用於進一步美化或調整匯出結果。

使用範例

以下是一個簡單的使用範例,展示如何將一個 Student 的 List 匯出為 Excel 檔案,再匯入回 List。

static void Main(string[] args)
{
    var students = new List<Student>()
    {
        new Student(0, "Test1", DateTime.Now),
        new Student(1, "Test2", DateTime.Now),
    };

    // 匯出為 Excel
    var exporter = ExcelyExporter.FromClassList<Student>();
    using var excel = exporter.ToExcel(students);

    // 匯入為 List<Student>
    var worksheet = excel.Workbook.Worksheets.First();
    var importer = new XlsxImporter();
    IEnumerable<Student> importResult = importer.ToClassList<Student>(worksheet);
}

您可以瀏覽 開始使用 Excely 來了解更多。

貢獻

可以先到 Wiki 大致了解一下專案資訊。
Issue 頁面可能有些懸賞任務需要您的協助。
如果您有任何建議或發現任何問題,也歡迎開啟 issue 或提交 pull request。

授權

本套件使用 Apache-2.0 License 授權,詳情請參見 LICENSE

excely's People

Contributors

maxzh1999tw avatar s750022s avatar

Stargazers

 avatar

Watchers

 avatar

Forkers

s750022s

excely's Issues

ClassListExporter我建議可以使用“組合“的方式更好的優化程式碼

Hi,Max.
您所寫的這個套件實用性很高,我很喜歡。
在ClassListExporter.cs裡,您使用繼承核心邏輯方式創建ClassListExporter,
未來如果想要加上匯出csv或其他格式時,可能會造成程式碼臃腫,不易延展。
也許可以使用“組合“取代“繼承“來達到更好的效果。

撰寫 Wiki 文件

希望有人可以協助撰寫 Wiki 文件,幫助新來的貢獻者與使用者更了解系統。

重寫 README

目前的 README 已經不敷使用,需要重寫一個能夠展示所有功能的。
順便美化一下,讓他看起來專業點。

更多 Excel 套件的支援

目前僅有支援 EPPlus LGPL last version 的版本,由於該版本已經停止維護,希望能有更多如 NPOI、ClosedXML 等套件的支援版本。

匯出 Csv 功能

初步想法是在 Excely 專案內撰寫 CsvWriter,可以匯出 Csv 字串。
以及編寫 WithBomShader,若輸出對象為 MemoryStream 或 File,為其加上 BOM,避免 Excel 打開是亂碼。

若有其他想法,或是希望有的 Shader 功能,也歡迎提出來。

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.