Userexcel 单元格中序号,但是通过openxml获取的不是序号是数字?

OpenXML 是一种用于读写 Office 文件(包括 Excel)的开放式标准。如果你通过 OpenXML 获取到的 Excel 单元格中的内容是数字而不是序号,可能是因为 Excel 中的序号实际上是一种显示格式,而不是存储的数值。OpenXML 读取的是实际存储的数值,而不会执行 Excel 中的格式化。

如果你想获取 Excel 单元格中的显示值,可以考虑使用 Cell.CellValue 属性。以下是一个示例代码,演示如何通过 OpenXML 获取 Excel 单元格的显示值:

using (SpreadsheetDocument spreadsheetDocument = SpreadsheetDocument.Open("YourExcelFile.xlsx", false))
{
    WorkbookPart workbookPart = spreadsheetDocument.WorkbookPart;
    WorksheetPart worksheetPart = workbookPart.WorksheetParts.First(); // 假设只有一个工作表

    // 选择要读取的单元格
    Cell cell = worksheetPart.Worksheet.Descendants<Cell>().FirstOrDefault(c => c.CellReference == "A1");

    if (cell != null)
    {
        string displayValue = cell.InnerText;

        // 如果单元格具有共享字符串,则进一步处理
        if (cell.DataType != null && cell.DataType.Value == CellValues.SharedString)
        {
            int sharedStringIndex = int.Parse(displayValue);
            SharedStringTablePart sharedStringTablePart = workbookPart.SharedStringTablePart;
            string sharedStringValue = sharedStringTablePart.SharedStringTable.Elements<SharedStringItem>().ElementAt(sharedStringIndex).InnerText;
            Console.WriteLine("Display Value (Shared String): " + sharedStringValue);
        }
        else
        {
            Console.WriteLine("Display Value (Number): " + displayValue);
        }
    }
}

在上述代码中,我们通过 cell.InnerText 获取了单元格的显示值。如果这是一个共享字符串,我们还从共享字符串表中获取了实际的字符串值。这样,你可以确保获取到的是 Excel 中显示的值而不是存储的数值。

最近更新

  1. docker php8.1+nginx base 镜像 dockerfile 配置

    2024-02-03 07:50:02       94 阅读
  2. Could not load dynamic library ‘cudart64_100.dll‘

    2024-02-03 07:50:02       100 阅读
  3. 在Django里面运行非项目文件

    2024-02-03 07:50:02       82 阅读
  4. Python语言-面向对象

    2024-02-03 07:50:02       91 阅读

热门阅读

  1. WSL2 Ubuntu下检测 不到GPU驱动,无法使用GPU

    2024-02-03 07:50:02       60 阅读
  2. 神经网络和深度学习吴恩达coursera笔记

    2024-02-03 07:50:02       39 阅读
  3. C++之类和对象(1)

    2024-02-03 07:50:02       44 阅读
  4. Spring Boot注解

    2024-02-03 07:50:02       49 阅读
  5. 【PDF.js】发票PDF不显示文本的问题

    2024-02-03 07:50:02       76 阅读
  6. 【Spring Boot 3】【JPA】嵌入式对象

    2024-02-03 07:50:02       45 阅读
  7. Golang使用cobra实现命令行程序

    2024-02-03 07:50:02       56 阅读
  8. MBP 2015安装Ubuntu 22.04.3系统后摄像头驱动问题解决

    2024-02-03 07:50:02       55 阅读
  9. 1z_php

    1z_php

    2024-02-03 07:50:02      47 阅读
  10. day40_mysql

    2024-02-03 07:50:02       40 阅读
  11. docker常用命令

    2024-02-03 07:50:02       53 阅读