本文仅当是个记录文件,仅供初学者参考。

首先得using几个npoi的空间名如下:

using NPOI.HSSF.UserModel;
using NPOI.HSSF.Util;
using NPOI.HPSF;
using NPOI.POIFS.FileSystem;
using NPOI.SS.UserModel;
using NPOI.SS.Util;
using System.IO;

添加函数的方法如下:

/// <summary>
/// excel添加图片的方法
/// </summary>
/// <param name="p_sheet">创建的sheet</param>
/// <param name="p_workbook">workbook</param>
/// <param name="p_szFileUrl">图片的url</param>
/// <param name="p_irow">行</param>
/// <param name="p_icol">列</param>
public static void AddPic(ISheet p_sheet,HSSFWorkbook p_workbook,string p_szFileUrl,int p_irow,int p_icol) {
try {
string szFileNm = p_szFileUrl;
if (!string.IsNullOrEmpty(szFileNm) && File.Exists(szFileNm)) {
byte[] bytes = System.IO.File.ReadAllBytes(szFileNm);
int iPictureIdx = ;
iPictureIdx = p_workbook.AddPicture(bytes,PictureType.JPEG);
HSSFPatriarch patriarch = (HSSFPatriarch)p_sheet.CreateDrawingPatriarch();
HSSFClientAnchor anchor = new NPOI.HSSF.UserModel.HSSFClientAnchor(, , , , p_irow, p_icol, p_irow + , p_icol+);
HSSFPicture pict = (HSSFPicture)patriarch.CreatePicture(anchor, iPictureIdx);
}
}
catch (Exception ex) { }
}

这里我添加了一个button按钮,点击后将数据写入excel中

protected void Button1_Click(object sender, EventArgs e)
{ //创建工作薄
HSSFWorkbook wk = new HSSFWorkbook();
//创建一个名称为mySheet的表,当然你也可以get一个已存在的sheet
ISheet tb = wk.CreateSheet("mySheet"); //创建一行,此行为第二行
IRow row = tb.CreateRow();
IRow row1 = tb.CreateRow();
IRow row2 = tb.CreateRow();
ICell cell1 = row1.CreateCell();
ICell cell2 = row1.CreateCell();
ICell cell3 = row2.CreateCell();
ICell cell4 = row2.CreateCell();
string szPicUrl = @"C:\Users\qq00067767\Desktop\xxx.png"; //图片地址
AddPic(tb, wk, szPicUrl, , ); for (int i = ; i < ; i++)
{
ICell cell = row.CreateCell(i); //在第二行中创建单元格
cell.SetCellValue(i);//循环往第二行的单元格中添加数据
}
//using (FileStream fs = File.OpenWrite(@"C:\Users\qq00067767\Desktop\xqqtest.xls"))//打开一个xls文件,如果没有则自行创建,如果存在myxls.xls文件则在创建是不要打开该文件!
//{
// wk.Write(fs); //向打开的这个xls文件中写入mySheet表并保存。 //}
FileStream oFile = new FileStream(@"C:\Users\qq00067767\Desktop\xqqtest.xls", FileMode.Open, FileAccess.ReadWrite); wk.Write(oFile); oFile.Close(); }

经过测试,没有问题!!!

NPOI简单操作excel的更多相关文章

  1. C# 使用自带Microsoft.Office.Interop.Excel简单操作Excel文件

    项目添加应用 Microsoft.Office.Interop.Excel.dll 文件 引用命名空间: using Excel = Microsoft.Office.Interop.Excel; 简 ...

  2. python简单操作excel

    python操作excel 写入excel # 写入excel import xlwt # 创建xls对象 wb = xlwt.Workbook() # 新增两个表单页(sheet1) sh1 = w ...

  3. C# 之 用NPOI类库操作Excel

    1.需引用以下命名空间: using NPOI.HSSF.UserModel; using NPOI.SS.UserModel; using NPOI.HPSF; using NPOI.HSSF.Ut ...

  4. asp.net(C#)之NPOI&quot;操作Excel

    1.首先到网上下载"NPOI.DLL".引用. 2.新建一个操作类"ExcelHelper.cs": using System.Collections.Gene ...

  5. Npoi简单读写Excel

    什么是NPOI ? 简而言之,NPOI就是可以在没有Office的情况下对Word或Excel文档进行读写等操作. 使用方式 : 1.准备NPOI的dll文件 下载链接:https://npoi.co ...

  6. C#开发之基于NPOI的操作Excel开发体验

    最近遇到一个数据导入的需求,语言是.net framework 4.7的C#.但是,这次主要探讨NPOI的体验,原则就是向前兼容.所以采用.xls的支持.网上的资料,我稍微整合了一些. #1 单元格下 ...

  7. NPOI读取操作excel

    .读取using (FileStream stream = new FileStream(@"c:\客户资料.xls", FileMode.Open, FileAccess.Rea ...

  8. .NET Core使用EPPlus简单操作Excel(简单实现导入导出)

    1.前言 EPPlus是一个使用Open Office XML(xlsx)文件格式,能读写Excel 2007/2010 文件的开源组件,在导出Excel的时候不需要电脑上安装office,它的一个缺 ...

  9. 免费高效实用的.NET操作Excel组件NPOI(.NET组件介绍之六)

    很多的软件项目几乎都包含着对文档的操作,前面已经介绍过两款操作文档的组件,现在介绍一款文档操作的组件NPOI. NPOI可以生成没有安装在您的服务器上的Microsoft Office套件的Excel ...

随机推荐

  1. iOS10 UI教程视图的中心位置

    iOS10 UI教程视图的中心位置 center表示的是视图的中心位置属性,这个属性在相对的UI层次结构上工作,和frame类似.center属性是一个在父视图上定义视图的位置的简便方法.center ...

  2. Swift3.0语言教程使用路径字符串

    Swift3.0语言教程使用路径字符串 Swift3.0语言教程使用路径字符串,路径其实是字符串的一种,我们称为路径字符串.本小节将讲解如何使用路径字符串. 1.组合路径 开发者可以将数组快速的组合成 ...

  3. hdu5057 Argestes and Sequence 分块

    Time Limit: / MS (Java/Others) Memory Limit: / K (Java/Others) Total Submission(s): Accepted Submiss ...

  4. Color the ball(线段树)

    Time Limit: 9000/3000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Others)Total Submission( ...

  5. Dependency Injection in ASP.NET Core

    Transient – A new instance of the service is created each time it is requested. It can be used for s ...

  6. Python学习笔记09

        异常处理   参考文章:http://blog.csdn.net/sinchb/article/details/8392827 有异常则执行except子句--类似C#的catch 就是当没有 ...

  7. WPF在DLL中读取Resource的方法

    WPF是个用户控件,被WinForm调用.而WinForm是在一个DLL类库中被调用.试了很多方法,都无法将Resource中的图读进程序.用下面的方法总算实现了.   /根据图片的名称,从资源中找到 ...

  8. iOS学习08之C语言内存管理

    本次主要学习和理解C语言中的内存管理 1.存储区划分 按照地址从高到低的顺序:栈区,堆区,静态区,常量区,代码区 1> 栈区:局部变量的存储区域 局部变量基本都在函数.循环.分支中定义 栈区的内 ...

  9. ACM:POJ 2739 Sum of Consecutive Prime Numbers-素数打表-尺取法

    POJ 2739 Sum of Consecutive Prime Numbers Time Limit:1000MS     Memory Limit:65536KB     64bit IO Fo ...

  10. phpunit测试成功 phpunit测试实践代码

    16:12 2015/12/8phpunit测试成功,代码写在www目录下,以类名命名代码文件,我的文件名为 ArrayTest.php,类名为ArrayTest,内部写了简单的测试代码:<?p ...