在c#中使用excel格式读取单元格

时间:2014-03-05 19:01:07

标签: asp.net excel

要求在.aspx页面上传Excel文件并读取数据并将其存储在数据库中。在excel中,用户可以在任何单元格中格式化特定的单词或句子。我们希望以HTML标记的形式保留这些格式。因此,我们希望使用html标记格式化数据。如何实现。

1 个答案:

答案 0 :(得分:1)

Probaly最好的方法是在Microsoft.Office.Interop.Excel命名空间下使用Excel互操作程序集。代码将是这样的:

Excel.Application excel = new Excel.Application();
excel.Workbooks.Open(fileName);
Excel.Worksheet activeWorksheet = ExcelApp.ActiveSheet;
for (int i = 1; i < 100; i++){
   for (int j = 1; j < 100; j++){
       Excel.Range currentCell = activeWorksheet.Cells[i, j];
       // formating 
       var fontFamily = currentCell.Font.Name;
       var italics = currentCell.Font.Italic;
       var color = currentCell.Font.Color;
   }
}

这将打开一个excel文件并循环到前99行和列。

但这可能过于密集,因为它会为每个文档打开Excel - 不确定需要什么样的性能。还有其他库提供简单的读写Excel,但我不确定他们是否提供阅读格式和类似的东西。您可以在此处找到有关这些工具的更多信息:Import and export excel。我刚检查过,似乎EPPPlus支持单元格样式,因此可能是另一种选择。