C# Excel轉換成Json工具(含源碼)


  • 可執行版本下載:https://github.com/neil3d/excel2json/releases
  • 完整項目源代碼下載:https://github.com/neil3d/excel2json
  • 主要功能是:把Exce的l表單轉換成json對象,並保存到一個文本文件中
  • 詳細幫助文檔請見:https://neil3d.github.io/app/excel2json.html

超級快的Excel轉換工具,比使用Excel COM組件或者OLE DB的方式快100倍。支持轉換成JOSN、SQL等數據輸出。

主要功能:

  • 把Excel表單轉換成Json對象,並保存到一個文本文件中。支持將表中內容轉換成Array,或者以第一列為ID的字典對象
  • 把Excel表單轉換成SQL文本;
  • 把Excel的表頭轉換成C#的struct數據定義代碼。

由於這里使用OpenXML格式直接解析,所以只支持.xlsx文件,並不支持.xls文件。

支持GUI模式和命令行模式

GUI模式方便預覽;而命令行式,方便將多個表格轉換工作寫成一個批處理文件(.bat或者.sh),一鍵處理幾十個表格。 例如,使用下面這個.bat批處理文件,可以一次性轉換”.\excel”目錄下所有的.xlsx文件到”.\json”目錄:

@SET EXCEL_FOLDER=.\excel
@SET JSON_FOLDER=.\json
@SET EXE=.\excel2json.exe

@ECHO Converting excel files in folder %EXCEL_FOLDER% ...
for /f "delims=" %%i in ('dir /b /a-d /s %EXCEL_FOLDER%\*.xlsx') do (
    @echo   processing %%~nxi 
    @CALL %EXE% --excel %EXCEL_FOLDER%\%%~nxi --json %JSON_FOLDER%\%%~ni.json --header 3
)

excel2json_gui
excel2json_cmd

命令行參數

  • -e, –excel Required. 輸入的Excel文件路徑.
  • -j, –json 指定輸出的json文件路徑.
  • -s, –sql 指定輸出的SQL文件路徑.
  • -p, –csharp 指定輸出的C#數據定義代碼文件路徑.
  • -h, –header Required. 表格中有幾行是表頭.
  • -c, –encoding (Default: utf8-nobom) 指定編碼的名稱.
  • -l, –lowcase (Default: false) 自動把字段名稱轉換成小寫格式.

例如:excel2json –excel test.xlsx –json test.json –header 3 –array true,其中的輸入和輸出文件,都在當前目錄下;

Excel表單格式約定

excel2json_example

  • 第一行固定作為列名(用來構造json字段名稱);
  • 第一列固定作為對象的ID;
  • 讀取Excel Workbook中的第一個sheet;
  • 對於SQL導出模式:第二行固定為字段類型
  • 使用表頭生成C#數據定義代碼

在Mac、Linux上運行

這個小工具使用C#編寫,編譯出來的.exe通過Mono即可在Mac或者Linux上運行。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM