C#基础:用ClosedXML实现Excel写入

这篇具有很好参考价值的文章主要介绍了C#基础:用ClosedXML实现Excel写入。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

直接在控制台输出,确保安装了该第三方库

using ClosedXML.Excel;

class DataSource
{
    public int id {  get; set; }
    public string name { get; set; } = "";
    public string classes { get; set; } = "";
    public int score { get; set; }
}
class Test
{
    public static void SetBorder(IXLRange range)
    {
        // 设置表格框线
        range.Style.Border.TopBorder = XLBorderStyleValues.Thin;
        range.Style.Border.InsideBorder = XLBorderStyleValues.Thin;
        range.Style.Border.OutsideBorder = XLBorderStyleValues.Thin;
        range.Style.Border.LeftBorder = XLBorderStyleValues.Thin;
        range.Style.Border.RightBorder = XLBorderStyleValues.Thin;
        range.Style.Border.BottomBorder = XLBorderStyleValues.Thin;

        // 设置表格框线颜色和粗细
        var borderColor = XLColor.Black;
        range.Style.Border.OutsideBorderColor = borderColor;
        range.Style.Border.LeftBorderColor = borderColor;
        range.Style.Border.RightBorderColor = borderColor;
        range.Style.Border.TopBorderColor = borderColor;
        range.Style.Border.BottomBorderColor = borderColor;

        range.Style.Border.TopBorder = XLBorderStyleValues.Thin;
        range.Style.Border.InsideBorder = XLBorderStyleValues.Thin;
        range.Style.Border.OutsideBorder = XLBorderStyleValues.Thin;
        range.Style.Border.LeftBorder = XLBorderStyleValues.Thin;
        range.Style.Border.RightBorder = XLBorderStyleValues.Thin;
        range.Style.Border.BottomBorder = XLBorderStyleValues.Thin;
        //range.Style.Border.SetBorderWidth(borderWidth);
    }
    static int Main(string[] args)
    {
        //一、生成数据
        List<DataSource> data = GetDataSource();

        //二、填充进Excel(ClosedXML.Excel)
        //(1)填充列表(列名:学生姓名,学生班级,学生成绩)
        //(2)添加一张图片
        using (var workbook = new XLWorkbook())
        {
            #region(1)填充列表
            //1.增加工作表
            var worksheet = workbook.Worksheets.Add("Sheet1");

            //1-2.设计样式
            // 调整第二列的列宽为20
            worksheet.Column(2).Width = 20;
            // 调整第四行的行高为15
            worksheet.Row(4).Height = 15;
            // 设置A1-C1的背景颜色为淡绿色
            worksheet.Range("A1:C1").Style.Fill.BackgroundColor = XLColor.LightGreen;
            // 设置A1-C11增加表格框
            SetBorder(worksheet.Range("A1:C11"));
            // 设置第一行垂直居中对齐和水平居中对齐
            worksheet.Row(1).Style.Alignment.Vertical = XLAlignmentVerticalValues.Center;
            worksheet.Row(1).Style.Alignment.Horizontal = XLAlignmentHorizontalValues.Center;

            //2.填充列表(列名:学生姓名,学生班级,学生成绩)
            worksheet.Cell("A1").Value = "学生姓名";
            worksheet.Cell("B1").Value = "学生班级";
            worksheet.Cell("C1").Value = "学生成绩";

            //3.填充数据
            int rowIndex = 2;
            foreach (var item in data)
            {
                worksheet.Cell($"A{rowIndex}").Value = item.name;
                worksheet.Cell($"B{rowIndex}").Value = item.classes;
                worksheet.Cell($"C{rowIndex}").Value = item.score;
                rowIndex++;
            }
            #endregion

            #region (2)添加一张图片
            worksheet.AddPicture("F:\\C_program\\test2\\files\\dog.png").MoveTo(worksheet.Cell("A20"));
            #endregion

            //保存excel文件
            workbook.SaveAs("F:\\C_program\\test2\\files\\data.xlsx");//存储路径
        }
        return 0;
    }

    private static List<DataSource> GetDataSource()
    {
        List<DataSource> data = new List<DataSource>();
        Random random = new Random();
        for (int i = 0; i < 10; i++)
        {
            DataSource item = new DataSource();
            item.id = i + 1;
            item.name = $"Student{i + 1}";
            int classNumber = random.Next(201, 204);
            item.classes = $"计算机{classNumber}";
            item.score = random.Next(50, 101);

            data.Add(item);
        }
        return data;
    }
}

实现效果:

C#基础:用ClosedXML实现Excel写入,C#基础,c#,开发语言文章来源地址https://www.toymoban.com/news/detail-820915.html

到了这里,关于C#基础:用ClosedXML实现Excel写入的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 【C# 基础精讲】文件读取和写入

    文件读取和写入是计算机程序中常见的操作,用于从文件中读取数据或将数据写入文件。在C#中,使用 System.IO 命名空间中的类来进行文件读写操作。本文将详细介绍如何在C#中进行文件读取和写入,包括读取文本文件、写入文本文件、读取二进制文件和写入二进制文件等操作

    2024年02月11日
    浏览(52)
  • 100天精通Python(进阶篇)——第42天:pdfplumber读取pdf(基础+代码实战写入Excel)

    PDF(Portable Document Format)是一种便携文档格式,便于跨操作系统传播文档。PDF文档遵循标准格式,因此存在很多可以操作PDF文档的工具,Python自然也不例外。

    2023年04月12日
    浏览(62)
  • Apache POI实现Excel导入读取数据和写入数据并导出

    Apache POI POI介绍 Apache POI是用Java编写的免费开源的跨平台的Java API,Apache POI提供API给Java程序对Microsoft Office格式档案读和写的功能,其中使用最多的就是使用POI操作Excel文件。 maven坐标: POI结构: 入门案例 ExcelTest .java文件 从Excel文件读取数据

    2024年02月12日
    浏览(46)
  • 发那科机器人二次开发 C#读取和写入数据,可以获取点位信息

    发那科机器人二次开发 C#读取和写入数据,可以获取点位信息。 非常适合进行二次开发及制作MES系统。 标题:发那科机器人二次开发中C#读取和写入数据的应用与实践 摘要:本文主要介绍了如何在发那科机器人二次开发中利用C#编程实现数据的读取和写入功能,并探讨了这一

    2024年04月23日
    浏览(59)
  • C语言实现bmp图像底层数据写入与创建

    要用C语言实现bmp图像底层数据读写与创建,需要对bmp图像文件格式非常了解,如果不太熟悉bmp图像文件格式请先移步bmp图像文件格式超详解 创建bmp图像文件的方式有很多,比如用halcon,用qt,这些都是把已经画好的图像保存为bmp图像,有时候我们需要自己实现bmp图像底层数据

    2024年02月02日
    浏览(43)
  • 《C#零基础入门之百识百例》(九十六)本地数据交互 -- 读写Excel表格文件

    本文属于 C#零基础入门之百识百例 系列文章。此系列文章旨在为学习C#语言的童鞋提供一套系统的学习路径。此系列文章都会通过【知识点】【练习题】的形式呈现。有任何问题

    2024年02月08日
    浏览(41)
  • C#实现Excel合并单元格数据导入数据集

    目录 功能需求 Excel与DataSet的映射关系 范例运行环境 Excel DCOM 配置 设计实现 组件库引入 ​方法设计 返回值  参数设计 打开数据源并计算Sheets 拆分合并的单元格 创建DataTable 将单元格数据写入DataTable 总结 将Excel里的worksheet表格导入到DataSet里,是项目应用里常用的一种操作。

    2024年02月02日
    浏览(45)
  • C# 读取Excel的几种常见方式及实现步骤

    目录 1.使用 Microsoft Office Interop Excel 库 2.使用 OLEDB 数据库连接方式 3. 使用 EPPlus 库 在 C# 中,我们可以使用以下几种方式将 Excel 文件中的数据读取到 DataTable 中: 1.使用 Microsoft Office Interop Excel 库 这种方法需要安装 Microsoft Office,并且性能较低。具体实现步骤如下: 2.使用 O

    2024年02月12日
    浏览(40)
  • pandas读取excel,再写入excel

    需求是这样的,从一个表读取数据,然后每次执行创建一个新表将值写入 读取这个表 写入到这个表   分别对应的是e、h列数据,代码如下:

    2024年02月11日
    浏览(49)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包