EPPlus получает количество строк и столбцов в Excel - PullRequest
0 голосов
/ 13 декабря 2018

У меня есть файл Excel, в котором есть 5 столбцов и 5 строк.

Я использую EPPlus (.net core c #) для анализа содержимого файла.

У меня естькод ниже, чтобы подсчитать строки и столбцы, а затем проанализировать содержимое этого файла Excel.

using (ExcelPackage package = new ExcelPackage(stream))
{    
    ExcelWorksheet worksheet = package.Workbook.Worksheets[1];
    int rowCount = worksheet.Dimension.End.Row;
    int colCount = worksheet.Dimension.End.Column;

    for (int row = 1; row <= rowCount; row++)
    {
        for (int col = 1; col <= colCount; col++)
        {
            //Parse here
        }
    }
}

С 5 строками и 5 столбцами данных, как упоминалось, это прекрасно работает.

Если я обновлю исохраните тот же файл и удалите, скажем, 3 строки и 3 столбца.

Теперь, если я прочту этот файл еще раз, он все равно покажет 5 столбцов и строк.Не уверен, есть ли другой способ прочитать фактические строки и столбцы?

Я что-то здесь упускаю.

1 Ответ

0 голосов
/ 30 апреля 2019

Попробуйте это

    using (ExcelPackage package = new ExcelPackage(stream))
    {    
        string directoryServerPath = // your file saving path in server;

        if (!Directory.Exists(directoryServerPath))
          Directory.CreateDirectory(directoryServerPath);                     

        System.IO.DirectoryInfo directoryFiles = new DirectoryInfo(directoryServerPath);
        foreach (FileInfo file in directoryFiles.GetFiles())
        {
         file.IsReadOnly = false;
         file.Delete();
        }

        ExcelWorksheet worksheet = package.Workbook.Worksheets[1];
        int rowCount = worksheet.Dimension.Rows;
        int colCount = worksheet.Dimension.Columns;

        for (int row = 1; row <= rowCount; row++)
        {
            for (int col = 1; col <= colCount; col++)
            {
                //Parse here
            }
        }

       package.SaveAs(new System.IO.FileInfo(directoryServerPath + fileName));
                    System.IO.File.SetAttributes(directoryServerPath + fileName, FileAttributes.ReadOnly);
    }
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...