检查Excel文件是否为空C#

检查Excel文件是否为空C#

问题描述:

任何人都可以建议,如何检查xls文件是否为空? 我试过FileInfo("fname").Length == 0但它不起作用。检查Excel文件是否为空C#

感谢

+0

您是否试图避免Excel自动化? – bouvierr 2012-04-03 23:47:56

“空”的Excel文件仍会有一个Excel文件头,这就是为什么你对一个大小为0的测试失败。

您可以使用Excel InteropUsedRange是什么:

http://social.msdn.microsoft.com/Forums/en-US/exceldev/thread/b9cdfbd7-5ae9-41f7-b7e8-ebc00e835d45#546316e8-8745-42e8-9c0d-063d1373dfbe

我觉得有没有类似一个你说简单的解决方案。

您将不得不通过一些Excel解析器实际编程读取文件,并检查是否有一些数据。

对于.xls你可以试试这个 - 它适用于我。

FileUpload1.SaveAs(Server.MapPath("~/FileUpload/") + path.Value); 
       Workbook book = Workbook.Load(Server.MapPath(("~/FileUpload/") + FileUpload1.FileName)); 
       Worksheet sheet = book.Worksheets[0]; 
       sheetCount.Value = sheet.Cells.LastRowIndex.ToString(); 

       foreach (Worksheet ws in book.Worksheets) 
       { 
        if (ws.Cells.Rows.Count != 0) 
        { 
         ddlSheets.Items.Add(ws.Name.ToString()); 
        } 
       }