-
[.NET] 상업 목적에서도 무료로 사용할 수 있는 엑셀(Excel) 편집 라이브러리 ClosedXML 소개. (feat. EPPlus 사용시 주의사항).NET/유용한 라이브러리 2021. 1. 28. 23:23반응형
.NET에서 엑셀을 다룰 때 주로 어떤 라이브러리를 쓰는가? Interop? EPPlus? Interop은 과거에 설정에 애먹었던 기억이 있으며, Excel이 설치되어있는 환경에서만 사용가능했던 것으로 기억하고 있다. (옛날 기억이다. 지금은 잘 모르겠다.)
EPPlus는 훌륭한 라이브러리이지만 비상업목적으로 사용했을때만 무료이다. 상업적 목적으로 사용하려면 돈 내고 라이선스를 사도록 하자. 비용은 2021.01 기준 연간 1인당 최대 299 USD 라고 한다.
(만약 사용중인 EPPlus가 4버전 이하이고, 해당 라이브러리를 직접 수정한 것이 아닌, 원본소스를 이용했다면 LGPL 라이선스 정책에 따라 고소는 면할 수 있다. 그런데 EPPlus를 자체적으로 수정했다면 소스코드에 대한 공개의무가 있다.)
EPPlus 5+ 에 대한 라이선스는 아래 링크를 참조하기 바란다.
https://www.epplussoftware.com/en/LicenseOverview/LicenseFAQ
반응형만약 차트나 도형이미지에 대한 지원이 필요없다면 closedXML도 좋은 대체제가 될 수 있다.
맛보기를 위해 콘솔 프로젝트를 하나 생성한 뒤 NuGet 패키지 관리자화면에서 ClosedXML을 찾아 설치해보자.
아래 소스코드를 입력하자.
using System; using ClosedXML.Excel; namespace ClosedXMLExamples { class Program { static void Main(string[] args) { using (XLWorkbook xl = new XLWorkbook()) { var sheet = xl.AddWorksheet("MySheet"); sheet.Cells("A1").Value = "잘되나요?"; sheet.Cells("A2").Value = "잘됩니다."; xl.SaveAs("closedXML.xlsx"); } } } }
실행 후 실행위치(별다른 설정이 없다면 bin\Debug\{.NET 버전에 따라 생성되는 하위폴더}\{실행위치} 로 이동하면 된다.)로 이동하면 "closedXML.xlsx" 파일이 생성된 것을 알 수 있다.
보다 자세한 사용방법은 아래 링크를 통해 확인해보기 바란다.
https://closedxml.readthedocs.io/en/latest/
이것으로 ClosedXML을 알아보았다.
반응형'.NET > 유용한 라이브러리' 카테고리의 다른 글
[.NET] ASP.NET Core MVC에 View 영역을 Vite 프로젝트로 개발할 수 있게 도와주는 Vite.AspNetCore 소개 (0) 2024.07.13 [.NET] 유효성(Validation)검사 코드를 간결하게 작성하는데 도움주는 GuardClauses 소개 (0) 2021.09.25 [.NET Tools] 웹 기반 dotnet playground 서비스 sharplab.io (0) 2021.06.05 [.NET] 메모리가 폭발하는 ClosedXML (1) 2021.01.30