c#怎么实现读取word文档

 我来答
Jack4DotNet
2018-05-21 · TA获得超过128个赞
知道小有建树答主
回答量:218
采纳率:91%
帮助的人:30.4万
展开全部

引用spire.doc.dll 

提取word文档的文字到txt文件:

using Spire.Doc;
using Spire.Doc.Documents;
using System.IO;

namespace ReadText
{
    class Program
    {
        static void Main(string[] args)
        {
            //创建Document对象
            Document doc = new Document();
            //加载Word文档
            doc.LoadFromFile("input.docx");
            //创建StringBuilder对象
            StringBuilder sb = new StringBuilder();
            //遍历Word文档中每一个section
            foreach (Section section in doc.Sections)
            {
                //遍历section中每一个段落
                foreach (Paragraph paragraph in section.Paragraphs)
                {
                    //提取Word的每一行文字存入StringBuilder对象
                    sb.AppendLine(paragraph.Text);
                }
            }
            //写入txt文档
            File.WriteAllText("output.txt", sb.ToString());
        }
    }
}

提取word文档中图片,保存到本地:

using Spire.Doc;
using Spire.Doc.Fields;
using Spire.Doc.Documents;

namespace ReadImage
{
    class Program
    {
        static void Main(string[] args)
        {      
            //创建Document对象并加载Word文档
            Document doc = new Document();
            doc.LoadFromFile(@"Image.doc");

            int index = 0;
            //遍历Word文档中每一个section
            foreach (Section section in doc.Sections)
            {
                //遍历section中的每个段落
                foreach (Paragraph paragraph in section.Paragraphs)
                {
                    //遍历段落中的每个DocumentObject
                    foreach (DocumentObject docObject in paragraph.ChildObjects)
                    {
                        //判断DocumentObject是否为图片
                        if (docObject.DocumentObjectType == DocumentObjectType.Picture)
                        {
                            //保存图片到指定路径并设置图片格式
                            DocPicture picture = docObject as DocPicture;
                            String imageName = String.Format(@"images\Image-{0}.png", index);
                            picture.Image.Save(imageName, System.Drawing.Imaging.ImageFormat.Png);
                            index++;
                        }
                    }
                }
            }
        }
    }
}
TableDI
2024-07-18 广告
在上海悉息信息科技有限公司,我们深知Excel在数据处理中的重要作用。在Excel中引用不同工作表(sheet)的数据是常见的操作,这有助于整合和分析跨多个工作表的信息。通过在工作表名称前加上感叹号“!”,您可以轻松地引用其他工作表中的数据... 点击进入详情页
本回答由TableDI提供
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式