如何用C#提取Word,Excel等文件的文本
2个回答
展开全部
下面分别使用Spire.Doc和Spire.XLS来提取的文本。
提取Word文本
(一)提取文段中的文本:
//初始化文档并加载一个实例
Document document = new Document();
document.LoadFromFile(@"C:\Users\Administrator\Desktop\2017诺贝尔奖.docx");
//初始化一个StringBuilder类新实例
StringBuilder sb = new StringBuilder();
//遍历section及段落,将段落中的文本保存到StringBuilder实例
foreach (Section section in document.Sections)
{
foreach (Paragraph paragraph in section.Paragraphs)
{
sb.AppendLine(paragraph.Text);
}
}
//将提取的文档保存为文本格式
File.WriteAllText("Extract.txt", sb.ToString());
(二)提取文本框中的文本
//初始化文档并加载一个实例
Document document = new Document();
document.LoadFromFile(@"C:\Users\Administrator\Desktop\2017诺贝尔奖.docx");
//诊断文档是否含有文本框
if (document.TextBoxes.Count > 0)
{
//初始化一个StreamWriter类并保存提取的文档
using (StreamWriter sw = File.CreateText("result.txt"))
{
//从文本框提取文档
foreach (Section section in document.Sections)
{
foreach (Paragraph p in section.Paragraphs)
{
foreach (DocumentObject obj in p.ChildObjects)
{
if (obj.DocumentObjectType == DocumentObjectType.TextBox)
{
TextBox textbox = obj as TextBox;
foreach (DocumentObject objt in textbox.ChildObjects)
{
if (objt.DocumentObjectType == DocumentObjectType.Paragraph)
{
sw.Write((objt as Paragraph).Text);
}
}
}
}
}
}
}
}
提取Excel文本
//创建一个工作簿并加载Excel工作表
Workbook workbook = new Workbook();
workbook.LoadFromFile(@"..\ExceltoTxt.xls");
//获取首个工作表,并保存为txt格式
Worksheet sheet = workbook.Worksheets[0];
sheet.SaveToFile("ExceltoTxt.txt", " ", Encoding.UTF8);
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
2017-05-21 · 互联网+时代高效组织信息化平台
关注
展开全部
如何将excel表里的数据提取到word文档里的解决方法如下:1、复制法。即将原来的数据直接复制后,在word中进行粘贴,这样数据就直接导入到word文档中了。
2、邮件合并法。在word中启用邮件合并,按向导的过程分别制作好需要插入的需要,数据源,对应关系,最后执行合并就可以了。
3、程序法。在word中插入合并域(如果是有规律的表格,可以不用这一步),然后编写vba程序,从excel文件中读取数据,然后写入到word中指定的位置。
上面三个方法中,方法1简单快捷,但是每次都需要操作,如果数据不是连续的块,需要复制粘贴多次,相对来说麻烦一点。方法2,一次设置可以多次使用,但不够灵活。方法3方便可以多次重复使用,但需要有一定的编程基础,可以根据工作的实际选择一个最适合的完成这个工作。
2、邮件合并法。在word中启用邮件合并,按向导的过程分别制作好需要插入的需要,数据源,对应关系,最后执行合并就可以了。
3、程序法。在word中插入合并域(如果是有规律的表格,可以不用这一步),然后编写vba程序,从excel文件中读取数据,然后写入到word中指定的位置。
上面三个方法中,方法1简单快捷,但是每次都需要操作,如果数据不是连续的块,需要复制粘贴多次,相对来说麻烦一点。方法2,一次设置可以多次使用,但不够灵活。方法3方便可以多次重复使用,但需要有一定的编程基础,可以根据工作的实际选择一个最适合的完成这个工作。
本回答被提问者和网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询