programing

.xls 파일을 읽고 쓸 수 있는 .NET Excel 라이브러리

minimums 2023. 5. 8. 22:01
반응형

.xls 파일을 읽고 쓸 수 있는 .NET Excel 라이브러리

.xls(.xlsx가 아님) 파일을 읽고 쓰는 Excel 라이브러리를 찾고 있습니다.

Excellent 라이브러리를 사용하고 있지만 너무 버그가 많아서 만든 파일을 열 수 없습니다.이 문제는 알려진 지 1년이 다 되어가는데 아직 해결되지 않았습니다.

다른 스레드에서 누군가 EPLus를 제안했지만 2007/2010 .xlsx 형식에서만 작동합니다.

과거에 쿠그라를 사용한 적이 있고, 꽤 만족스러웠지만, 그것은 오직 읽을 수 있을 뿐이라고 믿습니다.쓰지 않습니다.

도서관에 대해 알고 있다면, 그것이 무엇이라고 불리는지 알려주세요.

편집: 내장된 Microsoft로 Excel 파일을 만들 수 있어 매우 기쁩니다.사무실. 인터럽트.필요한 경우 Excel이지만 내 컴퓨터에는 Office 2007이 있고 대상 컴퓨터에는 Office 2003만 있습니다.해당 라이브러리에 대한 파일 버전이 12개, 14개가 있습니다.타겟 머신에서 엑셀 버전을 확인해보니 11.8169.8172 - 내장된 엑셀 interop이 타겟에서 작동하지 않을 것으로 예상됩니다.

NPOI를 추천합니다.NPOI는 무료이며 .X에서만 작동합니다.LS 파일.그것은 저에게 많은 도움이 되었습니다.

세부 정보: 컴퓨터에 Microsoft Office를 설치할 필요가 없습니다.LS 파일(NPOI를 사용하는 경우)

다음 블로그 게시물을 확인하십시오.

Excel 스프레드시트를 만드는 중입니다.XLS 및 .XC#의 LSX

Excel 테이블 및 동적 차트를 사용한 NPOI

[업데이트]

NPOI 2.0은 XLSX 및 DOCX에 대한 지원을 추가했습니다.

자세한 내용은 여기를 참조하십시오.

예약된 NPOI 2.0 시리즈 게시물

Excel ODBC 연결을 사용하여 Excel을 읽고 쓸 수 없는 이유가 있습니까?예를 들어, 데이터베이스처럼 Excel 파일 행에서 한 행씩 읽기 위해 다음 코드를 사용했습니다.

private DataTable LoadExcelData(string fileName)
{
  string Connection = "Provider=Microsoft.ACE.OLEDB.12.0;Data Source=" + fileName + ";Extended Properties=\"Excel 12.0;HDR=Yes;IMEX=1\";";

  OleDbConnection con = new OleDbConnection(Connection);

  OleDbCommand command = new OleDbCommand();

  DataTable dt = new DataTable(); OleDbDataAdapter myCommand = new OleDbDataAdapter("select * from [Sheet1$] WHERE LastName <> '' ORDER BY LastName, FirstName", con);

  myCommand.Fill(dt);

  Console.WriteLine(dt.Rows.Count);

  return dt;
}

Excel "데이터베이스"에도 동일한 방법으로 쓸 수 있습니다.보시는 바와 같이 Excel 2003이 설치된 기기의 Excel 버전을 다운그레이드할 수 있도록 사용할 버전 번호를 선택할 수 있습니다.실제로 인터럽트를 사용하는 경우에도 마찬가지입니다.낮은 버전을 사용할 수 있으며 개발 PC에 높은 버전만 있더라도 Excel 2003에서 작동해야 합니다.

Excel Jetcell이라는 타사 도구를 고려해 볼 수 있습니다.Excel 파일 읽기/쓰기를 위한 NET 구성 요소:

C# 샘플

// Create New Excel Workbook
ExcelWorkbook Wbook = new ExcelWorkbook();
ExcelCellCollection Cells = Wbook.Worksheets.Add("Sheet1").Cells;

Cells["A1"].Value = "Excel writer example (C#)";
Cells["A1"].Style.Font.Bold = true;
Cells["B1"].Value = "=550 + 5";

// Write Excel XLS file
Wbook.WriteXLS("excel_net.xls");

VB.NET 샘플

' Create New Excel Workbook
Dim Wbook As ExcelWorkbook = New ExcelWorkbook()
Dim Cells As ExcelCellCollection = Wbook.Worksheets.Add("Sheet1").Cells

Cells("A1").Value = "Excel writer example (C#)"
Cells("A1").Style.Font.Bold = True
Cells("B1").Value = "=550 + 5"

' Write Excel XLS file
Wbook.WriteXLS("excel_net.xls")

언급URL : https://stackoverflow.com/questions/5852678/net-excel-library-that-can-read-write-xls-files

반응형