zoukankan      html  css  js  c++  java
  • 用C#操作word替换字符,不用npoi,改用spire

    这两天想写个小程序,是用C#操作word文档的。许多人都对微软本身的解决方案COM组件十分不看好,比如需要本机安装office等等,总之吐槽很多,直接放弃。

    搜到一个国产的npoi库,据说操作简单功能强大,下载试用,发现操作excel还是不错的,但word不好使。而且官方网站文档不全,更新缓慢。

    尝试文本替换,总是出错。加了官方群,问了问题,没人回应。

    网上又找了找,发现有个spire的库不错,也有免费的dll可以用。(转个评价:这是一个免费又强大的C# word 组件,它不需要 Word automatio即可运行,并且任何第三方的功能都囊括)

    试用了一下,非常简单圆满地解决了我的问题。

    代码如下:

     private void button1_Click(object sender, EventArgs e)
            {
                var doc = new Document();
                doc.LoadFromFile("d:\ht.docx");
    
                doc.Replace("[<单位名称>]", tbDwmc.Text, false, false);
                doc.Replace("[<开户行>]", tbKhh.Text, false, false);
                doc.Replace("[<银行账号>]", tbYhzh.Text, false, false);
                doc.Replace("[<单位地址>]", tbAddress.Text, false, false);
                doc.Replace("[<单位电话>]", tbTel.Text, false, false);
    
                var guid = Guid.NewGuid().ToString();
                doc.SaveToFile("s" + guid + ".docx", FileFormat.Docx);
                doc.Close();
    
                Process.Start("s" + guid + ".docx");
            }
    

    扯个鸡毛蒜皮的事:

    晚上很晚了,npoi官方群里终于有人说话了。看到有一哥们说npoi不好用,我就接了一句说已换spire。此时估计是刺激到了npoi的群主,赫然露面了,先是说在群里问问题不付钱凭什么人搭理你,随后又点出我的问题是智商不够。我迅速回应:骂人不揭短,智商你妈逼哦。

    事实上,程序员们辛苦劳动收费是应该的。写点东西不容易,腰酸脖子疼的,收费这一点我非常同意。可你的官方群里,不就是让用户交流的吗?问个问题,只是求高人点拨一下,给个方向或者关键字啥的就已足够。你他妈上来就谈钱,伤感情不说,重点是——竟然被这孙子看出来我智商不高,真是太窘迫啦。

    后来,我就被踢了。祝npoi继续发扬光大。

    附上spire的链接:https://freeword.codeplex.com/

  • 相关阅读:
    Java实现 计蒜客 拯救行动
    Java实现 计蒜客 拯救行动
    Java实现 LeetCode 174 地下城游戏
    Java实现 LeetCode 174 地下城游戏
    Java实现 LeetCode 174 地下城游戏
    Java实现 LeetCode 173 二叉搜索树迭代器
    Java实现 LeetCode 173 二叉搜索树迭代器
    Visual Studio的SDK配置
    怎样使用CMenu类
    mfc menu用法一
  • 原文地址:https://www.cnblogs.com/dapolo/p/4393205.html
Copyright © 2011-2022 走看看