国产成人精品久久免费动漫-国产成人精品天堂-国产成人精品区在线观看-国产成人精品日本-a级毛片无码免费真人-a级毛片毛片免费观看久潮喷

您的位置:首頁技術文章
文章詳情頁

使用NPOI導出包含圖片數據的EXCEL文件打不開,幫忙看下代碼

瀏覽:97日期:2022-10-15 09:45:18

問題描述

要建立一個三列的excel表格,最后一列是個二維碼,使用NPOI寫完之后,導出的死活打不開,不知道代碼哪里錯了,麻煩各位幫忙看看代碼哪里錯了,不甚感激。

public static void CreateImageExcel(List<string> links){ //創建工作薄 HSSFWorkbook workbook = new HSSFWorkbook(); HSSFSheet sheet = (HSSFSheet)workbook.CreateSheet("Sheet1"); //填充列標題以及樣式 int rowsNum = 0; //行號 HSSFRow headerRow = (HSSFRow)sheet.CreateRow(rowsNum); string strQrCodePath = ""; headerRow.CreateCell(0, CellType.String).SetCellValue("編號"); headerRow.CreateCell(1, CellType.String).SetCellValue("鏈接"); headerRow.CreateCell(2, CellType.String).SetCellValue("二維碼"); HSSFRow row = null; rowsNum = 1; //行號,從第2行開始 foreach (var link in Links) {//寫入字段值 row = (HSSFRow)sheet.CreateRow(rowsNum);row.CreateCell(0, CellType.String).SetCellValue(rowsNum);row.CreateCell(1, CellType.String).SetCellValue(Link);row.CreateCell(2, CellType.Blank).SetCellValue("");strQrCodePath = CommonHelper.CreateQRCode(Configer.GetAppSetting<string>("siteUrl") + "/p/" + item.Link, 8, 4);byte[] bytes = System.IO.File.ReadAllBytes(strQrCodePath);int pictureIdx = workbook.AddPicture(bytes, PictureType.PNG);HSSFPatriarch patriarch = (HSSFPatriarch)sheet.CreateDrawingPatriarch();HSSFClientAnchor anchor = new HSSFClientAnchor(0, 10, 1023, 0, 2, rowsNum, 2, rowsNum);HSSFPicture pict = (HSSFPicture)patriarch.CreatePicture(anchor, pictureIdx);pict.Resize();rowsNum++;//刪除二維碼if (System.IO.File.Exists(strQrCodePath)){ System.IO.File.Delete(strQrCodePath);} } using (MemoryStream ms = new MemoryStream()) {workbook.Write(ms);ms.Flush();ms.Position = 0;// 設置編碼和附件格式 string fileName = model.Channel.Name + "_" + DateTime.Now.ToString("yyyy-MM-dd-HHmmss") + ".xlsx";//客戶端保存的文件名System.Web.HttpContext.Current.Response.ContentType = "application/vnd.ms-excel";System.Web.HttpContext.Current.Response.ContentEncoding = Encoding.UTF8;System.Web.HttpContext.Current.Response.Charset = "";System.Web.HttpContext.Current.Response.AppendHeader("Content-Disposition", "attachment;filename=" + HttpUtility.UrlEncode(fileName, Encoding.UTF8));System.Web.HttpContext.Current.Response.BinaryWrite(ms.GetBuffer());ms.Close();ms.Dispose();System.Web.HttpContext.Current.Response.End(); }}

問題解答

回答1:

//創建工作薄 HSSFWorkbook workbook = new HSSFWorkbook(); 應該是這句代碼的問題HSSFWorkbook創建的工作簿只支持2003格式的,即xls要想導出xlsx的格式,應該用XSSFWorkbook對象,例如IWorkbook workbook = new XSSFWorkbook();我今天在做導入也遇到這個問題,通過上面的方式解決的

回答2:

改完了,只能導出.xls文件,不知道是不是其中有圖片的原因,導出的.xlsx文件無法查看。

標簽: excel
主站蜘蛛池模板: 国产一区精品在线观看 | 波多野结衣中文一区二区免费 | 欧美日韩精品一区二区在线线 | 久久院线 | 亚洲精品视频免费 | 亚洲高清成人欧美动作片 | 日本特爽特黄特刺激大片 | 亚洲91精品| 国产在线观看免费 | 国产日本欧美高清免费区 | 国产亚洲精品美女一区二区 | 久久亚洲国产伦理 | 亚洲偷自拍另类图片二区 | 91精品国产高清久久久久久io | 三级视频欧美 | 国产一级毛片外aaaa | 伊人久久网站 | 久久久久毛片免费观看 | 欧美18毛片免费看 | 欧美一区二区三区日韩免费播 | 美女三级毛片 | 亚洲国产欧美在线成人aaaa | 伊人久久精品午夜 | 久久精品国产400部免费看 | 久久国产精品视频 | 中文在线免费视频 | a级毛片在线免费看 | 久青草视频在线 | 高清国产在线播放成人 | 99久久免费午夜国产精品 | 美女扒开腿让男人桶个爽 | 久久久久久亚洲精品影院 | 日韩精品亚洲一级在线观看 | 中文字幕亚洲高清综合 | 一级毛片成人午夜 | 2022年国产精品久久久久 | 亚洲视频免费播放 | 国产一区二区精品久 | 亚洲欧美成人影院 | 免费国产a国产片高清 | 中文字幕成人网 |