C# 基于NPOI操作Excel

C#基于NPOI操作Excel

在C#中,我们可以使用NPOI操作Excel文件。NPOI是一个开源的.NET库,它提供了对Microsoft Office的读取和写入支持。在本文中,我们将介绍使用NPOI操作Excel的完整攻略。

安装NPOI

要使用NPOI,我们需要先安装它。我们可以通过NuGet安装NPOI。在Visual Studio中,依次打开"工具"->"NuGet包管理器"->"程序包管理器控制台",运行以下命令:

Install-Package NPOI

创建Excel文档

在C#中,我们可以使用NPOI创建Excel文档。以下是一个创建Excel文档的示例代码:

using System.IO;
using NPOI.SS.UserModel;
using NPOI.XSSF.UserModel;

public void CreateExcel(string filePath)
{
    IWorkbook workbook = new XSSFWorkbook();
    ISheet sheet = workbook.CreateSheet("Sheet1");
    IRow row = sheet.CreateRow(0);
    row.CreateCell(0).SetCellValue("Name");
    row.CreateCell(1).SetCellValue("Age");

    row = sheet.CreateRow(1);
    row.CreateCell(0).SetCellValue("John");
    row.CreateCell(1).SetCellValue(30);

    using (FileStream file = new FileStream(filePath, FileMode.Create))
    {
        workbook.Write(file);
    }
}

在上面的示例中,我们创建了一个名为"Sheet1"的工作表,并向其中添加了两行数据。最后,我们将工作簿保存到指定的文件路径。

读取Excel文档

在C#中,我们可以使用NPOI读取Excel文档。以下是一个读取Excel文档的示例代码:

using System.IO;
using NPOI.SS.UserModel;
using NPOI.XSSF.UserModel;

public void ReadExcel(string filePath)
{
    using (FileStream file = new FileStream(filePath, FileMode.Open, FileAccess.Read))
    {
        IWorkbook workbook = new XSSFWorkbook(file);
        ISheet sheet = workbook.GetSheetAt(0);

        for (int i = 0; i <= sheet.LastRowNum; i++)
        {
            IRow row = sheet.GetRow(i);

            if (row != null)
            {
                string name = row.GetCell(0).StringCellValue;
                int age = (int)row.GetCell(1).NumericCellValue;

                Console.WriteLine($"Name: {name}, Age: {age}");
            }
        }
    }
}

在上面的示例中,我们打开指定的Excel文件,并读取了第一个工作表中的数据。然后,我们循环遍历所有行,并输出每行中的数据。

示例说明

以下是两个示例,分别介绍如何使用NPOI创建和读取Excel文档。

创建Excel文档示例

以下是一个示例,演示如何使用NPOI创建Excel文档:

static void Main(string[] args)
{
    string filePath = "D:\\test.xlsx";
    CreateExcel(filePath);

    Console.WriteLine("Excel created successfully!");
    Console.ReadKey();
}

上述代码创建了一个名为"test.xlsx"的Excel文档,并保存在指定的文件路径中。

读取Excel文档示例

以下是一个示例,演示如何使用NPOI读取Excel文档:

static void Main(string[] args)
{
    string filePath = "D:\\test.xlsx";
    ReadExcel(filePath);

    Console.ReadKey();
}

上述代码读取了上一个示例中创建的Excel文档,并将其中的数据输出到控制台。

本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:C# 基于NPOI操作Excel - Python技术站

(0)
上一篇 2023年5月31日
下一篇 2023年5月31日

相关文章

  • ASP.NET(C#) 定时执行一段代码

    一、什么是定时执行代码 定时执行代码是指在预设的时间间隔内,自动执行某段特定的代码,通常用于需要定时轮询或定时执行某些任务的应用场景中。 二、ASP.NET(C#) 定时执行一段代码的攻略 利用 Timer 定时器 推荐使用 System.Timers.Timer 定时器,可以在 ASP.NET 应用程序中启用未标记线程,保留 Timer 拥有的所有资源,可…

    C# 2023年5月31日
    00
  • C#动态执行批处理命令的方法

    C#可以通过Process类来执行批处理命令。但是Process类只能执行已知的静态命令。为了执行动态生成的命令,可以使用ProcessStartInfo的属性以及RedirectStandardInput和UseShellExecute方法组合来实现输入指令、执行命令的效果。 下面是两个示例: 示例一: 这个示例展示了如何使用Process类执行一个可操作…

    C# 2023年5月15日
    00
  • 详解.Net中字符串不变性与相等判断的特殊场景

    针对.Net中字符串不变性与相等判断的特殊场景,我们需要从以下几个方面进行讲解: 字符串不变性的概念与原理 字符串相等判断的常规方法 特殊场景下的字符串相等判断问题及解决方法 1. 字符串不变性的概念与原理 在 .Net 中,为了追求运行效率和确保字符串的安全性,字符串被设计为不可变对象,即字符串一旦被创建之后,不能被修改。基于这种不可变的特性,字符串在被使…

    C# 2023年5月31日
    00
  • WCF实现双向通信

    下面是关于“WCF实现双向通信”的完整攻略,包含两个示例。 1. 什么是WCF双向通信 WCF双向通信是一种WCF通信模式,它允许客户端和服务端之间进行双向通信。在WCF双向通信中,客户端和服务端都可以发送和接收消息,这使得WCF双向通信非常适合实现实时通信。 2. 示例1:创建WCF服务 以下是一个示例,演示如何创建WCF服务: using System;…

    C# 2023年5月15日
    00
  • C# char[]与string byte[]与string之间的转换详解

    C# char[]与string 在C#中,char[]与string之间的转换可以通过以下方法实现: char[]转string 可以调用string构造函数,传入char[]即可: char[] chars = { ‘H’, ‘e’, ‘l’, ‘l’, ‘o’ }; string str = new string(chars); 上面的代码会将char…

    C# 2023年6月8日
    00
  • C#中图片、二进制与字符串的相互转换方法

    C#中图片、二进制与字符串的相互转换方法可以通过System.Convert类来实现。System.Convert类是一个静态类,其中包含了一系列的转换方法,可以实现为不同的数据类型之间的转换。 图片与二进制的相互转换方法 图片转二进制 图片转二进制的方法是可以使用System.IO命名空间中的File类来实现。具体步骤如下: 使用File.ReadAllB…

    C# 2023年6月8日
    00
  • C#实现根据指定容器和控件名字获得控件的方法

    C#实现根据指定容器和控件名字获得控件的方法 在C#中,我们可以使用FindControl方法根据指定容器和控件名字获得控件。本文将提供详细的“C#实现根据指定容器和控件名字获得控件的方法”的完整攻略,包括如何定义方法、如何使用方法以及两个示例。 定义方法 要定义根据指定容器和控件名字获得控件的方法,我们需要执行以下步骤: 定义一个名为FindControl…

    C# 2023年5月15日
    00
  • C#实现计算器精简版

    C#实现计算器精简版攻略 前言 计算器是很多编程语言学习者在学习过程中不可绕过的一个经典的练手项目。本文将详细介绍如何使用C#语言实现一个简单的计算器。 知识储备 在实现本文中的计算器之前,您需要掌握以下C#相关知识: 基本的变量声明 基本的运算符使用 控制流程(如if语句、switch语句) 文本框和按钮控件的基本使用 实现步骤 第一步:创建UI界面 在V…

    C# 2023年6月1日
    00
合作推广
合作推广
分享本页
返回顶部