用NPOI外掛把GridView上的圖片匯出到Excel的記錄
using NPOI.HSSF.UserModel; using NPOI.HSSF.Util; using NPOI.DDF; using NPOI.SS.UserModel; using System.IO; using System.Data; protected void Button2_Click(object sender, EventArgs e) { //呼叫儲存過程 SqlConnection conn = new SqlConnection(connectionString); conn.Open(); SqlCommand cmd = new SqlCommand("儲存過程名",conn); cmd.CommandType = CommandType.StoredProcedure; cmd.Parameters.Add("@引數1", SqlDbType.VarChar, 50); cmd.Parameters.Add("@引數2", SqlDbType.VarChar,50); cmd.Parameters["@引數1"].Value = DropDownList1.SelectedValue; cmd.Parameters["@引數2"].Value = TextBox1.Text; SqlDataAdapter da = new SqlDataAdapter(cmd); DataSet ds = new DataSet(); da.Fill(ds); DataTable dt = ds.Tables[0]; string excelname = System.DateTime.Now.ToString().Replace(":", "").Replace("-", "").Replace(" ", ""); string filePath = System.Web.HttpContext.Current.Server.MapPath("ReadExcel") + "\\" + excelname + ".xls"; MemoryStream ms = RenderDataTableToExcel(dt) as MemoryStream; FileStream fs = new FileStream(filePath, FileMode.Create, FileAccess.Write); byte[] data = ms.ToArray(); fs.Write(data, 0, data.Length); fs.Flush(); fs.Close(); data = null; ms = null; fs = null; Response.ContentEncoding = System.Text.Encoding.GetEncoding("GB2312"); Response.AppendHeader("content-disposition", "attachment;filename=" + System.Web.HttpUtility.UrlEncode(excelname, System.Text.Encoding.UTF8) + ".xls"); Response.ContentType = "Application/excel"; Response.WriteFile(filePath); Response.End(); } public Stream RenderDataTableToExcel(DataTable SourceTable) { MemoryStream ms = new MemoryStream(); NPOI.HSSF.UserModel.HSSFWorkbook workbook = new NPOI.HSSF.UserModel.HSSFWorkbook(); NPOI.SS.UserModel.ISheet sheet = workbook.CreateSheet(); NPOI.SS.UserModel.IRow headerRow = sheet.CreateRow(0); sheet.SetColumnWidth(1, 100); headerRow.CreateCell(0).SetCellValue("編號"); headerRow.CreateCell(1).SetCellValue("圖片"); int rowIndex = 1; foreach (DataRow row in SourceTable.Rows) { NPOI.SS.UserModel.IRow dataRow = sheet.CreateRow(rowIndex); dataRow.Height = 200; dataRow.CreateCell(0).SetCellValue(row["id"].ToString()); if (row["image"].ToString() != "" ) { byte[] bytes = System.IO.File.ReadAllBytes(row["image"].ToString()); int pictureIdx = workbook.AddPicture(bytes, PictureType.JPEG); HSSFPatriarch patriarch = (HSSFPatriarch)sheet.CreateDrawingPatriarch(); HSSFClientAnchor anchor = new HSSFClientAnchor(88, 20, 0, 0, 1, rowIndex, 2, rowIndex + 1); HSSFPicture pict = (HSSFPicture)patriarch.CreatePicture(anchor, pictureIdx); } rowIndex++; } workbook.Write(ms); ms.Flush(); ms.Position = 0; sheet = null; headerRow = null; workbook = null; return ms; }
感謝三位博主的知識分享,在看我的文章之前可以先參考三位博主的文章。
相關推薦
用NPOI外掛把GridView上的圖片匯出到Excel的記錄
using NPOI.HSSF.UserModel; using NPOI.HSSF.Util; using NPOI.DDF; using NPOI.SS.UserModel; using System.IO; using System.Data; protected
如何用EGit外掛把github上的專案clone到eclipse
導讀:本篇主要介紹如何使用EGit下載GitHub上已存在的庫。如果不是為了下載一個Java Project,直接在Eclipse中匯入使用,那可以使用GitHub的桌面程式(GitHub for Windows),這個上傳下載檔案更方便。建議看這篇文章之前先看這篇——
C# 將圖片匯出Excel(包括 建立Excel 、檔案壓縮、遞迴刪除檔案及資料夾)
新增引用 using ICSharpCode.SharpZipLib.Zip; public void CreateDirectory(string DirectoryPath) { if (!Directory.Exist
一個php檔案就可以把資料庫的資料匯出Excel表格
資料庫內容太多,複製貼上太麻煩?那就用程式碼實現把,把程式碼寫好了,匯出還不容易嗎,訪問即可匯出。 excel.php <?php error_reporting(E_ALL ^ E_DEPRECATED); $localhost = '資料庫地址'; $dbnam
網頁上實現匯出excel表格時,怎樣在後臺生成excel後,讓表格在瀏覽器中自動下載(larval框架)
Html程式碼片段: <form method="post" id="export_form" action="action" style="float: left"> <input id="export_info" type="hidden" n
springBoot 使用easypoi,在linux伺服器上無法 匯出excel問題
使用的框架 excel工具 文件 http://www.afterturn.cn/doc/easypoi.html 根據文件,在windows上實現了excel下載功能,也是正常的。 但放在linux伺服器上時,無法載入到excel模版 報錯資訊 2018-02-28 1
@程式設計師,你們還在用網上亂找的方法匯入匯出Excel麼,我們給你造了個輪子!!!!!
程式設計師的顯著特點 有一天跟一位同事跟我閒聊,討論起過去若干年軟體行業的感受,他問了個問題:你覺得一個好的軟體工程師最顯著的特點是什麼? 我想了一會,說:大概是坐得住吧。 某種意義上來說,在網際網路技術飛速發展的今天,資訊的洪流總是無聲無息間把我們掩埋,一不小心,可能就感覺自己似乎已經out了。 當然,資訊
Vue2.0 引用 exif.js 實現調用攝像頭進行拍照功能以及圖片上傳功能
[0 complete num else imp ada blob can isf vue組件代碼 <template> <div> <div style="padding:20px;"> <div cla
megapix-image外掛 使用Canvas壓縮圖片上傳 MegaPixImage.js下載
MegaPixImage.js下載地址 <!DOCTYPE html > <html> <head> <title>通過Canvas及File API縮放並上傳圖片</title> <script
用原生JS實現多張圖片上傳及預覽功能(相容IE8)
最近需要做一個圖片上傳預覽的功能(相容IE8-11、chrome、firefox等瀏覽器),網上現有的檔案上傳元件(如webuploader)總是會遇到一些相容性問題。於是我參考了一些博文(連結找不到了⊙o⊙…),自己用原生JS寫了一個支援多張圖片上傳預覽功能的Demo 先通過最終效果看一下功能:
NPOI匯出Excel中修改格式,傳輸圖片
一、使用NPOI設定背景色 方法一:使用NOPI自帶的顏色使用方法,缺點就是自帶的樣色種類少,不夠用 HSSFWorkbook hssfworkbook = new HSSFWorkbook();//建立工作薄 styleCommonTextRedColor = hss
HTML5 CSS3 經典案例:無外掛拖拽上傳圖片 (支援預覽與批量) (一)
上傳基本是專案中經常出現的,一般採用:1、form提交 2、flash3、html5form提交會重新整理頁面,很難做到非同步上傳;flash可能是用得比較多了,因為可以兼顧到幾乎所有的瀏覽器,我之前一直會用jquery的uploadify作為專案中的上傳工具,uploadi
放下包袱,把能量用在往前走上
本文記錄我與一名《資料結構基礎》課的網路學員的對話。在終身學習年代,最寶貴的,也是最現實的,就是從現在開始,把能量全用在想要的那個方向,而不是被想像中的,傳說中的哪樣東西絆住。 【學生】 老師 我做php已經四五年了,現在在做c和c++,因為學歷不高,高一就退學了,看了看本套課程
如何在Mac OS X上用命令列快速的調整圖片大小
如果你使用的是Mac,經常需要調整一批照片的大小,實際上有一個內建工具,可以讓你無需開啟任何影象編輯工具就能搞定。這就是所謂的“SIPS”,是命令列的影象處理工具。它非常容易使用,但你需要知道如何在終端上發揮它的優勢。 簡單地說你想要處理的圖片拷貝到一個目錄中的,在終端cd到該目錄,並執行以下命令
把Safari當chrome用(外掛篇)
1. Markdown Here Write email in Markdown, and then make it pretty. 主頁:http
jquery.fileupload.js外掛使用初探--多圖片上傳預覽
一、前臺程式碼: <!DOCTYPE html> <html> <head> <title>jquery.fileupload.js使用測試</title> <script src="jq
js外掛+UploadFile類實現圖片的批量上傳
檔案上傳無疑是web應用中一個非常常用的功能,下面小編給大家分享一下diyUpload.js+ThinkPHP中的UploadFile類實現圖片的批量上傳。 首先,給大家介紹展示一下具體操作頁面: html程式碼如下: <div cl
easyui datagrid 增刪改查分頁 匯出 先上傳後匯入 NPOI批量匯入 匯出EXCEL
效果圖資料庫程式碼 create database CardManage use CardManage create table CardManage ( ID int identity(1,1) primary key, userDep nvarchar(10)n
用封裝好的okHttp3上傳圖片到介面
首先 ok的兩個依賴: //okhttp compile 'com.squareup.okhttp3:okhttp:3.6.0' compile 'com.squareup.okio:okio:1.11.0'
改造Kindeditor之:自定義圖片上傳外掛。 外加給圖片增加水印效果的選擇。
場景: 編輯部人士編輯文章時需要在文章中上傳圖片。但上傳圖片時需要增加是否增加水印的選擇(有可能是自己公司的原創作品)。所以需要改造Kindeditor . 1: 刪除Kindeitor 預設的引數物件裡的Image 新增自定bareheadimage 有原來的 item