当前位置: 首页 > news >正文

中国临朐门户网站市场推广

中国临朐门户网站,市场推广,商城网站建设都有哪些类型,校园网站建设方案书处理PDF文件中的内容是比较麻烦的事情,特别是以表格形式呈现的各种数据。为了充分利用这些宝贵的数据资源,我们可以通过程序提取PDF文件中的表格,并将其保存为更易于处理和分析的格式,如txt、csv、xlsx,从而更方便地对…

处理PDF文件中的内容是比较麻烦的事情,特别是以表格形式呈现的各种数据。为了充分利用这些宝贵的数据资源,我们可以通过程序提取PDF文件中的表格,并将其保存为更易于处理和分析的格式,如txt、csv、xlsx,从而更方便地对表格数据进行处理、分析和可视化,加快工作效率。本文将介绍如何在.NET平台使用C#代码提取并保存PDF文件中的表格数据

文章目录

    • 提取PDF文件中的表格并保存为TXT和CSV文件
    • 提取PDF文件中的表格并转换为Excel和CSV表格

本文所使用的方法需要用到免费的Free Spire.PDF for .NET,可从官网下载或通过NuGet安装:

PM> Install-Package FreeSpire.PDF

提取PDF文件中的表格并保存为TXT和CSV文件

提取PDF表格数据主要用到的是PdfTableExtractor类,该类下的ExtractTable(int pageIndex)方法可以提取任意页的所有表格数据,并返回表格的集合。在提取到表格数据后,我们就可以将数据稍作处理并写入txt文件了。下面是操作示例:

  1. 创建 PdfDocument 对象并再入PDF文件。
PdfDocument doc = new PdfDocument();
doc.LoadFromFile("示例.pdf");
  1. 创建 PdfTableExtractor 对象。
PdfTableExtractor extractor = new PdfTableExtractor(doc);
  1. 声明 PdfTable 数组.
  2. 遍历文档页面,从页面提取表格。
tableList = extractor.ExtractTable(pageIndex);
  1. 判断表格列表是否为空,如果不为空,则使用 PdfTable.GetText(int rowIndex, int columnIndex) 方法在每个表格中获取单元格中的数据并添加到StringBuilder中。
  2. 将处理好的数据保存到TXT文件并关闭PDF文件。

完整代码示例:

using System.Text;
using Spire.Pdf;
using Spire.Pdf.Utilities;namespace ExtractPdfTable
{class Program{static void Main(string[] args){// 创建PdfDocument对象并加载PDF文件PdfDocument doc = new PdfDocument();doc.LoadFromFile("示例.pdf");// 创建 StringBuilder 对象StringBuilder builder = new StringBuilder();// 初始化 PdfTableExtractor 类的实例PdfTableExtractor extractor = new PdfTableExtractor(doc);// 声明 PdfTable 数组PdfTable[]? tableList = null;int tableCount = 1;// 循环遍历页面for (int pageIndex = 0; pageIndex < doc.Pages.Count; pageIndex++){// 从特定页面提取表格tableList = extractor.ExtractTable(pageIndex);// 判断表格列表是否为空if (tableList != null && tableList.Length > 0){// 遍历列表中的表格foreach (PdfTable table in tableList){// 获取特定表格的行数和列数int row = table.GetRowCount();int column = table.GetColumnCount();// 遍历行和列for (int i = 0; i < row; i++){for (int j = 0; j < column; j++){// 获取特定单元格的文本string text = table.GetText(i, j);// 将文本添加到 StringBuilder 中并添加制表符builder.Append(text + "\t");}builder.Append("\r\n");}// 写入 .txt 文件File.WriteAllText($"output/TXT表格/TXT表格_{tableCount}.txt", builder.ToString());tableCount += 1;}}}doc.Close();}}
}

PDF文件:
提取PDF表格数据并保存到txt文本文件

保存的TXT文件:
提取PDF表格数据并保存到txt文本文件

提取PDF文件中的表格并转换为Excel和CSV表格

在提取PDF文件中的表格后,我们还可以借助Free Spire.XLS for .NET将提取的表格保存为Excel和CSV表格。Free Spire.XLS for .NET可从官网下载或通过NuGet安装:

PM> Install-Package FreeSpire.XLS

下面是操作示例:

  1. 创建 PdfDocument 对象并加载示例PDF文件。
PdfDocument doc = new PdfDocument();
doc.LoadFromFile("示例.pdf");
  1. 创建 Workbook 对象并清除默认工作表。
Workbook workbook = new Workbook();
workbook.Worksheets.Clear();
  1. 初始化 PdfTableExtractor 类的实例。
PdfTableExtractor extractor = new PdfTableExtractor(doc);
  1. 声明 PdfTable 数组。
  2. 循环遍历PDF页面并提取每页的表格。
tableList = extractor.ExtractTable(pageIndex);
  1. 判断表格列表是否为空,如果不为空,则创建Excel工作表,使用 PdfTable.GetText(int rowIndex, int columnIndex) 方法从每个单元格提取数据,并通过 sheet.Range[int rowIndex + 1, int columnIndex + 1].Value 属性将数据写入到创建Excel工作表中。
  2. 将工作表保存为csv文件。
sheet.SaveToFile("output/表格/CSV表格.csv", ",", Encoding.UTF8);
  1. 或保存整个Excel工作簿为xlsx文件。
workbook.SaveToFile("output/表格/Excel表格.xlsx", ExcelVersion.Version2013);
  1. 关闭PDF文件和工作簿文件。

完整代码示例:

using System.Text;
using Spire.Pdf;
using Spire.Pdf.Utilities;
using Spire.Xls;namespace ExtractTablesToExcel
{class Program{static void Main(string[] args){// 创建 PdfDocument 对象并加载示例PDF文件PdfDocument doc = new PdfDocument();doc.LoadFromFile("示例.pdf");// 创建 Workbook 对象并清除默认工作表Workbook workbook = new Workbook();workbook.Worksheets.Clear();// 初始化 PdfTableExtractor 类的实例PdfTableExtractor extractor = new PdfTableExtractor(doc);// 声明 PdfTable 数组PdfTable[]? tableList = null;int sheetNumber = 1;// 循环遍历页面for (int pageIndex = 0; pageIndex < doc.Pages.Count; pageIndex++){// 从特定页面提取表格tableList = extractor.ExtractTable(pageIndex);// 判断表格列表是否为空if (tableList != null && tableList.Length > 0){// 遍历列表中的表格foreach (PdfTable table in tableList){// 添加工作表Worksheet sheet = workbook.Worksheets.Add(string.Format("Table_{0}", sheetNumber));// 获取特定表格的行数和列数int row = table.GetRowCount();int column = table.GetColumnCount();// 循环遍历行和列for (int i = 0; i < row; i++){for (int j = 0; j < column; j++){// 从特定单元格获取文本string text = table.GetText(i, j);// 将文本写入指定单元格sheet.Range[i + 1, j + 1].Value = text;}}sheet.SaveToFile("output/表格/CSV表格.csv", ",", Encoding.UTF8);sheetNumber++;}}}// 保存为Excel工作簿workbook.SaveToFile("output/表格/Excel表格.xlsx", ExcelVersion.Version2013);doc.Close();workbook.Dispose();}}
}

输出文件:
提取PDF表格数据并保存为CSV和Excel表格

本文介绍了如何使用免费的Free Spire.PDF for .NET和Free Spire.XLS for .NET从PDF文件中提取表格数据并保存到TXT文件、CSV文件以及Excel文件的方法。其他更多功能请前往Spire.PDF for .NET教程查看。

http://www.hkea.cn/news/315592/

相关文章:

  • 中国网站开发网站seo需要用到哪些工具
  • 织梦做的网站首页出现空白网页平台做个业务推广
  • 备案做电影网站吗yandx引擎入口
  • 网站双倍浮动百度账号登陆入口
  • 聊城市网站建设网站推广排名
  • 帝国新闻网站模板百度seo推广怎么做
  • 预约做港澳证的网站网站排名在线优化工具
  • 罗湖实惠的网站建设费用成都官网seo厂家
  • 建设部官方网站有哪些优帮云排名优化
  • 天津做网站找谁新东方在线教育平台官网
  • 南宁做网站在哪了日本预测比分
  • 咋样查看网站用什么编程语言做的9个广州seo推广神技
  • 网站链接太多怎么做网站地图谷歌广告
  • 网站关键词更新临汾网络推广
  • 个人做网站靠什么盈利免费网站建设模板
  • 网站开发 打标签aso优化怎么做
  • 教育校园网站建设方案seo每天一贴
  • 怎么看网站的建设时间推广公司品牌
  • 营销型网站有什么特点英语培训机构
  • 学院网站的系统建设方式宝鸡网站seo
  • 网站客户端怎么做的百度一下了你就知道官网
  • 有什么推广方法优化大师电脑版官方
  • 自己做网站的服务器上海网站建设公司排名
  • 跳蛋塞逼做多的视频网站百度广告联盟官网
  • 房地产网站开发文档企业查询
  • 做emu对网站有什么要求十大免费无代码开发软件
  • 扬州专业做网站做关键词优化
  • 宿州网站建设贰聚思诚信网站服务器
  • 用照片做模板下载网站好百度爱采购官方网站
  • 微网站建设套餐网络营销是做什么的