2017-09-21 5 views
0

Excel 파일을 읽는 데 OpenXML을 사용하지만 데이터가 포함되지 않은 행을 읽는 데 문제가 있습니다. 벨로우즈는 행을 읽는 코드입니다.OpnenXML을 사용하여 Excel 읽기 - 공백 인 행을 읽습니다.

var firstOrDefault = sourceWorksheetPart.Worksheet.Elements<SheetData>().FirstOrDefault(); 
      if (firstOrDefault != null) 
      { 
       var sourceWorksheetRows = firstOrDefault.Elements<Row>();} 

여기서 sourceWorksheetRows를 계산하면 엑셀 시트에있는 레코드 수가 많아집니다. null을 확인하려고했지만 작동하지 않습니다. 수 표를 구현하는 방법.

답변

0

행이 실제로 null입니까? 거기에 공백이나 뭔가가 오른쪽에 칼럼 방법입니까?

null이어야하는 행을 삭제하고 다시 삽입하십시오.

+0

실제로 엑셀 파일을 업로드하는 것이 자유 롭습니다. 파일에 공간이 포함되어있을 수도 있지만 데이터가 포함되지 않은 파일을 확인한 경우도 있습니다. 따라서 데이터가 포함되지 않은 행을 검사하지 않도록해야합니다. –

+0

문제를 더 잘 요약하십시오. 데이터의 예와 원하는 것을 정확하게 제공하십시오. 누구든지이 문제에 대한 충분한 설명이 없습니다. – dev8989

+0

내 문제는 데이터가 포함되지 않은 행을 읽지 않는 것입니다. 행에 공백이 있거나 텍스트, 날짜, 숫자 이외의 문자가 있으면 읽을 수 없습니다. –

0

행이 빈 레코드인지 확인하려면 행의 첫 번째 셀 (또는 레코드에 필수적인 셀)을 확인한 다음 CellValue가 null인지 또는 "Trim (CellValue.Text)"인지 확인하십시오. 길이 == 0 "입니다.

이것은 내가 권고하는 해결책입니다.