Aspose Cells ExportDataTable CellsException - PullRequest
0 голосов
/ 28 апреля 2018

Я пытаюсь прочитать файл Excel размером 263 КБ, он содержит 3 столбца и 6998 строк данных, первый столбец - буквенно-цифровой идентификатор Site ID, например: "D7302", а остальные 2 столбца - latitude и longitude десятичного типа,

            try
        {
            dataTable = worksheet.Cells.ExportDataTable(HeaderLineStartingRowNumber, 0, worksheet.Cells.MaxRow - HeaderLineStartingRowNumber + 1, worksheet.Cells.MaxColumn + 1, true);
        }
        catch (CellsException)
        {
            dataTable = worksheet.Cells.ExportDataTableAsString(HeaderLineStartingRowNumber, 0, worksheet.Cells.MaxRow - HeaderLineStartingRowNumber + 1, worksheet.Cells.MaxColumn + 1, true);
        }

этот код всегда выдает CellsException и экспортирует данные в виде строки, которая усекает десятичные дроби и возвращает строку, поэтому вместо 28.125027778 возвращается 28, когда я уменьшил размер файла до 100 строк, он был успешно экспортирован, как и ожидалось, так это должно быть проблема размера, поэтому есть ограничения по размеру для ExportDataTable, спасибо

1 Ответ

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

Мы проверили вашу проблему с помощью следующего примера кода, и он работал нормально. Мы протестировали эту проблему с самой последней версией , то есть 18.4, загруженной на NuGet . Пожалуйста, скачайте образец файла Excel , используемый внутри кода, а также посмотрите скриншот , который показывает, что данные из таблицы успешно экспортированы в таблицу данных.

Код точно такой же, как и у вас, с небольшими изменениями, поэтому в вашем коде нет ошибок. Поэтому, если вы используете более старую версию, вы должны использовать самую последнюю версию.

Если ваша проблема все еще возникает с самой последней версией, предоставьте нам свой исполняемый пример кода (предпочтительно пример проекта консольного приложения) вместе со всеми файлами, используемыми внутри вашего кода. Мы выполним ваш код с нашей стороны и постараемся повторить проблему и зарегистрировать ее в нашей базе данных для исправления в будущих выпусках. Спасибо за сотрудничество в этом отношении и хорошего дня.

Пример файла Excel, используемого внутри кода - Ссылка для скачивания:

Пример кода

Workbook wb = new Workbook("sampleExportDataTable.xlsx");

Worksheet worksheet = wb.Worksheets["Data"];

int HeaderLineStartingRowNumber = 25;

var dataTable = worksheet.Cells.ExportDataTable(HeaderLineStartingRowNumber, 0, worksheet.Cells.MaxDataRow - HeaderLineStartingRowNumber + 1, worksheet.Cells.MaxDataColumn + 1, true);

Скриншот: Export Data Table using Aspose.Cells APIs

Примечание: Я работаю евангелистом разработчика в Aspose

...