如何创建一个excel表格,并从列表中插入数据到它

本文关键字:列表 插入 数据 excel 创建 何创建 一个 表格 | 更新日期: 2023-09-27 18:05:29

我有一个带有URL集合的excel表格,我正在从excel中逐一读取这些URL,并将URL传递给另一个服务以检索一些数据。在这个链接中现在,我有一个这样的类

 internal class Record
    {
        public string Id { get; set; }
        public string url { get; set; }
        public string Name { get; set; }
        public string Age { get; set; }
    }

现在,我创建了一个类List<Record> rec= new List<Record>();的列表从服务中,我得到了大约100条记录,它在列表rec中。我想要实现的是创建另一个excel表格与列名Id,Url,名称,年龄并将rec中的数据逐行传输到excel表中。(这是在上面的链接所做的相反)excel应该看起来像,

Id              Url                                                                                  Name    Age
1       http://www.sample.com/term=100898731%5Buid%5D&cmd=DetailsSearch&report=xml&format=text        Tom     10
2       http://www.sample.com/term==101120693%5Buid%5D&cmd=DetailsSearch&report=xml&format=text       Jerry   11
3       http://www.sample.com/term==100893225%5Buid%5D&cmd=DetailsSearch&report=xml&format=text       Jose    10 

如何实现相同的??

如何创建一个excel表格,并从列表中插入数据到它

您是否考虑过使用Open XML SDK

using (SpreadsheetDocument spreadSheet = SpreadsheetDocument.Create(
    System.IO.Path.Combine(AppDomain.CurrentDomain.BaseDirectory, SPREADSHEET_NAME),
    SpreadsheetDocumentType.Workbook))
{
    // create the workbook
    spreadSheet.AddWorkbookPart();
    spreadSheet.WorkbookPart.Workbook = new Workbook ();     // create the worksheet
    spreadSheet.WorkbookPart.AddNewPart<WorksheetPart>();
    spreadSheet.WorkbookPart.WorksheetParts.First().Worksheet = new Worksheet();
    // create sheet data
    spreadSheet.WorkbookPart.WorksheetParts.First().Worksheet.AppendChild(new SheetData());
    // create row
    spreadSheet.WorkbookPart.WorksheetParts.First().Worksheet.First().AppendChild(new Row());
    // create cell with data
    spreadSheet.WorkbookPart.WorksheetParts.First().Worksheet.First().First().AppendChild(          
          new Cell() { CellValue = new CellValue("101") });
    // save worksheet
    spreadSheet.WorkbookPart.WorksheetParts.First().Worksheet.Save();
    // create the worksheet to workbook relation
    spreadSheet.WorkbookPart.Workbook.AppendChild(new Sheets());
    spreadSheet.WorkbookPart.Workbook.GetFirstChild<Sheets>().AppendChild(new Sheet()
        {
            Id = spreadSheet.WorkbookPart.GetIdOfPart(spreadSheet.WorkbookPart.WorksheetParts.First()),
            SheetId = 1,
            Name = "test"
        });
    spreadSheet.WorkbookPart.Workbook.Save();
}

遍历列表并添加更多单元格。