zoukankan      html  css  js  c++  java
  • NPOI 替换word模版

            private void Button_Click(object sender, RoutedEventArgs e)
            {
                string fileName = @"C:UsersAdminDesktop322.docx";
                XWPFDocument document = null;
                try
                {
                    using (FileStream file = new FileStream(fileName, FileMode.Open, FileAccess.Read))
                    {
                        document = new XWPFDocument(file);
                    }
    
                    using (FileStream stream = File.OpenRead(fileName))
                    {
                        XWPFDocument doc = new XWPFDocument(stream);
                        //遍历段落
                        foreach (var para in doc.Paragraphs)
                        {
                            ReplaceKey(para);
                        }
                        //遍历表格
                        var tables = doc.Tables;
                        foreach (var table in tables)
                        {
                            foreach (var row in table.Rows)
                            {
                                foreach (var cell in row.GetTableCells())
                                {
                                    foreach (var para in cell.Paragraphs)
                                    {
                                        ReplaceKey(para);
                                    }
                                }
                            }
                        }
                        using (MemoryStream ms = new MemoryStream())
                        {
    
                            doc.Write(ms);
                            using (FileStream fsWrite = new FileStream(@"D:1.txt", FileMode.Append))
                            {
                                fsWrite.Write(ms.ToArray(), 0, ms.ToArray().Length);
                            };
                        }
    
                    }
                }
                catch (Exception ex)
                {
                    Console.WriteLine(string.Format("文件{0}打开失败,错误:{1}", new string[] { fileName, ex.ToString() }));
                }
            }
    
            private void ReplaceKey(XWPFParagraph para)
            {
    
                string text = para.ParagraphText;
                var runs = para.Runs;
                string styleid = para.Style;
                for (int i = 0; i < runs.Count; i++)
                {
                    var run = runs[i];
                    text = run.ToString();
                    runs[i].SetText(text+2, 0);
                }
            }
  • 相关阅读:
    hdu 5253 最小生成树
    hdu5248 序列变换
    bjfu1299 stl使用
    bjfu1277 简单递归
    bjfu1262 优先队列
    bjfu1287字符串输出的大水题
    bjfu1281
    bjfu1253 最大上升子序列和
    [转][Unity3D]引擎崩溃、异常、警告、BUG与提示总结及解决方法
    Unity3d 中 将远程 MySQL 数据库转换为本地 Sqlite
  • 原文地址:https://www.cnblogs.com/nocanstillbb/p/9078872.html
Copyright © 2011-2022 走看看