当前位置: 代码网 > it编程>编程语言>Asp.net > .NET Core NPOI导出Word(网页前端浏览器下载word文件)

.NET Core NPOI导出Word(网页前端浏览器下载word文件)

2024年09月16日 Asp.net 我要评论
.NET Core NPOI导出Word(网页前端浏览器下载word文件)

首先引入npio sdk 库文件

通过nuget包管理器搜索NPOI进行安装并引入包

后台代码示例

 public MemoryStream GetLavPrintMS(InvPrintDTO dto)
        {
            using var ms = new MemoryStream();
            string sqlStr = @"";
            var table = GetDataTable(sqlStr);
            var list = DataTableHelper.DataTableToList<DTO>(table);
            var doc = CreateWordData(list);
            doc.Write(ms);
            byte[] buffer = ms.ToArray();
            return new MemoryStream(buffer);
        }
 private XWPFDocument CreateWordData(List<DTO> list)
        {
            var doc = new XWPFDocument();
            foreach (var item in list)
            {
                var row = doc.CreateParagraph().CreateRun();
                row.SetText(item.BatchNo);
                row.IsBold = true;
                row.FontSize = 12;
 
                //创建table
                var table = doc.CreateTable(3, 2);
                table.Width = 5000;
               
                doc.CreateParagraph();//创建空白行
            }
            return doc;
        }
控制器代码:


public FileResult PrintLabel([FromBody] DTO dto)
        {
            var stream = _service.GetLavPrintMS(dto);
            return File(stream, "text/plain", "test.docx");
        }
前端导出控制的js代码:
function Print(){
          var oReq = new XMLHttpRequest();
                oReq.open("POST", '/Print', true);
                oReq.setRequestHeader('Content-type', 'application/json;');
                oReq.responseType = "blob";
                oReq.onload = function(oEvent) {
                    QISLoading.Hide();
                    var content = oReq.response;
                    var blob = new Blob([content]);
 
                   
                        var elink = document.createElement('a');
                        elink.download = fileName;
                        elink.style.display = 'none';
                        elink.href = URL.createObjectURL(blob);
                        document.body.appendChild(elink);
                        elink.click();
                        document.body.removeChild(elink);
                    
                };
                oReq.send(JSON.stringify(DTO));
}
(0)

相关文章:

版权声明:本文内容由互联网用户贡献,该文观点仅代表作者本人。本站仅提供信息存储服务,不拥有所有权,不承担相关法律责任。 如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 2386932994@qq.com 举报,一经查实将立刻删除。

发表评论

验证码:
Copyright © 2017-2025  代码网 保留所有权利. 粤ICP备2024248653号
站长QQ:2386932994 | 联系邮箱:2386932994@qq.com