【问题标题】:Aspose Cells ExportDataTable CellsExceptionAspose Cells ExportDataTable CellsException
【发布时间】:2018-04-30 12:47:45
【问题描述】:

我正在尝试读取大小为 263 KB 的 excel 文件,它包括 3 列和 6998 行数据,第一列是字母数字 id 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 有尺寸限制吗,谢谢

【问题讨论】:

  • 这是一个excel问题吗?
  • 我不这么认为,因为当我减小 excel 文件大小时,ExportDataTable 按预期工作
  • 但是你把它标记为 excel...
  • 可能是因为 D7302 是单元格名称,它也是您的列名,所以出现此问题。我们将对其进行调查,并希望在周一或周二为您更新。问候。 -- 注意:我在 Aspose 担任开发人员宣传员
  • no no 列名是Site ID,D7302是本列的一个例子,我更新了问题

标签: c# aspose aspose-cells


【解决方案1】:

我们已使用以下示例代码测试了您的问题,并且运行良好。我们使用most recent version i.e. 18.4 uploaded on NuGet 测试了这个问题。请下载代码中使用的sample Excel file,并查看screenshot,表示工作表中的数据已成功导出到数据表中。

该代码与您的代码完全相同,只是稍有更改,因此我们在您的代码中没有发现任何错误。因此,如果您使用的是旧版本,则必须使用最新版本。

如果您的问题在最新版本中仍然存在,请向我们提供您的可运行示例代码(最好是示例控制台应用程序项目)以及代码中使用的所有文件。我们将在最后执行您的代码,并尝试复制问题并将其记录到我们的数据库中,以便在未来的版本中进行修复。感谢您在这方面的合作,祝您有美好的一天。

代码中使用的示例 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);

截图:

注意:我在 Aspose 担任开发人员宣传员

【讨论】:

  • 感谢 @shakeel 的详细回复,我在 Visual Studio 解决方案中使用 Aspose,所以我正在检查是否可以将其更新到最新版本,即我们正在使用的当前版本是 7.7.2.0,问题是其他解析器也在使用 Aspose,所以我担心这可能会对其他解析器产生影响
  • 谢谢@shakeel 问题出在第一列有混合数据类型,所以我明确定义了ExportTableOptions的列数据类型
  • @EliasGhali,很高兴知道您能够解决这个问题。如果您遇到任何其他问题,请随时告诉我们。我们很乐意为您提供进一步的帮助。谢谢。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多