DTO(Data Transfer Object)是一种设计模式,用于在不同层之间传输数据。在C#中,我们可以使用OpenXML库来操作Excel文件,并使用DTO来传输数据。
OpenXML是一个开源的XML SDK,用于创建、读取和修改Office文档,包括Excel、Word和PowerPoint等。它提供了一组API,可以直接操作Office文档的内部结构。
在C#中使用OpenXML写入单元格,可以按照以下步骤进行:
using DocumentFormat.OpenXml;
using DocumentFormat.OpenXml.Packaging;
using DocumentFormat.OpenXml.Spreadsheet;
// 创建Excel文档
using (SpreadsheetDocument document = SpreadsheetDocument.Create("Sample.xlsx", SpreadsheetDocumentType.Workbook))
{
// 添加Workbook部分
WorkbookPart workbookPart = document.AddWorkbookPart();
workbookPart.Workbook = new Workbook();
// 添加Worksheet部分
WorksheetPart worksheetPart = workbookPart.AddNewPart<WorksheetPart>();
worksheetPart.Worksheet = new Worksheet(new SheetData());
// 添加Sheet部分
Sheets sheets = workbookPart.Workbook.AppendChild(new Sheets());
Sheet sheet = new Sheet() { Id = workbookPart.GetIdOfPart(worksheetPart), SheetId = 1, Name = "Sheet1" };
sheets.Append(sheet);
// 保存文档
workbookPart.Workbook.Save();
}
// 打开Excel文档
using (SpreadsheetDocument document = SpreadsheetDocument.Open("Sample.xlsx", true))
{
// 获取Worksheet部分
WorksheetPart worksheetPart = document.WorkbookPart.WorksheetParts.First();
SheetData sheetData = worksheetPart.Worksheet.GetFirstChild<SheetData>();
// 创建行和单元格
Row row = new Row();
Cell cell = new Cell();
// 设置单元格值
cell.DataType = CellValues.String;
cell.CellValue = new CellValue("Hello World");
// 将单元格添加到行
row.Append(cell);
// 将行添加到SheetData
sheetData.Append(row);
// 保存文档
worksheetPart.Worksheet.Save();
}
以上代码演示了如何使用OpenXML库创建一个Excel文档,并在其中写入一个单元格的数据。你可以根据需要进行扩展和修改。
推荐的腾讯云相关产品和产品介绍链接地址:
请注意,以上推荐的腾讯云产品仅供参考,具体选择应根据实际需求和情况进行。
领取专属 10元无门槛券
手把手带您无忧上云