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

首先得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. 后缀数组 POJ 1743 Musical Theme

    题目链接 题意:给定n个数字,求超过5个数字的,最长的,变化相同的,不相交的重复子串 分析:男人8题中的一题!数列相邻两项做差,形成新数列,即求数列中的最长重复子串(不可相交). 后缀数组+二分答案. ...

  2. PHP Java 设置cookie方法

      Java Cookie cookie = new Cookie(COOKIE_NAME, encrypt_cookieV); cookie.setMaxAge(60 * 60); cookie.s ...

  3. MFC 动态修改对话框标题

    在对应对话框的初始化函数OnInitDialog()中添加以下代码: CString title; title.Format("%d",Id);//在标题栏动态显示Id的值 thi ...

  4. WPF学习笔记(3):Path绘制命令zz

    WPF的XAML提供了一系列功能强大.用法复杂的 mini-language 来描述可扩展应用程序标记语言 (XAML) 中的几何路径.如下所示: XAML <Canvas>   < ...

  5. ccc pool

    var sp = new _ccsg.Sprite("a.png"); this.addChild(sp); cc.pool.putInPool(sp); cc.pool.getF ...

  6. PHP 将秒数转换成时分秒

    将秒数转换成时分秒,PHP提供了一个函数gmstrftime,不过该函数仅限于24小时内的秒数转换.对于超过24小时的秒数,我们应该怎么让其显示出来呢,例如 34:02:02 $seconds = 3 ...

  7. windows自动修改ip的bat文件

    @echo off title --IP自动设置 -- MODE con: COLS=80 lines=30 color 0a :main cls echo 按提示操作 echo. echo 设置为无 ...

  8. <构建之法>3-5章感想

    提示:(下面的总结我会按照每章发现的问题,自己的回答,感想来陈述) 3章. 在阅读3.2.4职业成长-自我评估的时候,说到CRUD需要一些核心技术和许多控扩展的知识,那么作为软件工程的学生,在学校除了 ...

  9. [Cocos2D-x For WP8]Label标签

    Label标签主要会用于在游戏中显示一些文字字符串类型的信息.那么在Cocos2D-x里面主要会有下面的一些创建标签的方式: 1.使用CCLabelTTF类生成系统文字的标签,编程语法如下: CCLa ...

  10. [Cocos2d-x For WP8]Layer 层

        层(CCLayer) 从概念上说,层就是场景里的背景. CCLayer同样是CCNode的子类,通常用addChild方法添加子节点.CCLayer对象定义了可描绘的区域,定义了描绘的规则.C ...