C#/VB.NET 将PDF转为Excel
PDF文档可以避免可防⽌他⼈⽆意中触到键盘修改⽂件内容。但是在避免他人⽆意修改的同时也妨碍了正常的修改。如果你想处理或修改PDF文档中的数据,不妨试试用Excel来实现。Excel拥有强大的数据处理功能,丰富的绘制图表功能,丰富的自动化功能。本文将分为两个部分详细为您介绍如何通过C#/VB.NET代码将PDF转为Excel格式。仅需简单几步即可实现此功能,详情请阅读以下内容。
将PDF转为Excel
将多页 PDF 转换为一个 Excel 工作表
类库引入及代码思路
方法 1:
在程序中引入 Spire.PDF.dll 文件;将Free Spire.PDF for .NET 下载到本地,解压,找到 BIN 文件夹下的 Spire.PDF.dll。然后在 Visual Studio 中打开“解决方案资源管理器”,鼠标右键点击“引用”,“添加引用”,将本地路径 BIN 文件夹下的 dll 文件添加引用至程序。
方法 2:
通过 NuGet 安装。可通过以下 2 种方法安装:
1. 可以在 Visual Studio 中打开“解决方案资源管理器”,鼠标右键点击“引用”,“管理 NuGet 包”,然后搜索“Free Spire.PDF”,点击“安装”。等待程序安装完成。
2. 将以下内容复制到 PM 控制台安装。
Install-Package FreeSpire.PDF -Version 8.2.0
将PDF转为Excel
具体步骤:
创建 PdfDocument 类的对象。
调用 PdfDocument.LoadFromFile() 方法加载 PDF 文档。
通过 PdfDocument.SaveToFile() 方法保存为Excel文件格式到指定路径。
完整代码:
【C#】
using Spire.Pdf;
using Spire.Pdf.Conversion; namespace ConvertPdfToExcel
{
class Program
{
static void Main(string[] args)
{
//创建 PdfDocument 类的对象
PdfDocument pdf = new PdfDocument();
//加载PDF文档
pdf.LoadFromFile("TableSample2.pdf"); //保存PDF为XLSX文件
pdf.SaveToFile("PdfToExcel2.xlsx", FileFormat.XLSX);
}
}
}
【VB.NET】
Imports Spire.Pdf
Imports Spire.Pdf.Conversion Namespace ConvertPdfToExcel Class Program Private Shared Sub Main(ByVal args() As String)
'创建 PdfDocument 类的对象
Dim pdf As PdfDocument = New PdfDocument
'加载PDF文档
pdf.LoadFromFile("TableSample2.pdf ")
'保存PDF为XLSX文件
pdf.SaveToFile("PdfToExcel2.xlsx", FileFormat.XLSX)
End Sub
End Class
End Namespace
文档效果:
原文档

输出文档

将多页 PDF 转换为一个 Excel 工作表
下面是将多页 PDF 转换为一个 Excel 工作表的具体步骤:
- 创建 PdfDocument 类的对象。
- 调用 PdfDocument.LoadFromFile() 方法加载 PDF 文档。
- 初始化XlsxLineLayoutOptions 类的一个实例,在类构造函数中,将第一个参数convertToMultipleSheet 设置为 false。
- 调用PdfDocument.ConvertOptions.SetPdfToXlsxOptions()方法设置PDF转XLSX选项。
- 用PdfDocument.SaveToFile()方法将PDF保存为Excel文档。
完整代码:
【C#】
using Spire.Pdf;
using Spire.Pdf.Conversion; namespace ConvertPdfToExcel
{
class Program
{
static void Main(string[] args)
{
//创建 PdfDocument 类的对象
PdfDocument pdf = new PdfDocument();
//加载PDF文档
pdf.LoadFromFile("TableSample.pdf"); //初始化XlsxLineLayoutOptions 类的一个实例,在类构造函数中,将第一个参数convertToMultipleSheet 设置为 false.
//四个参数分别代表:convertToMultipleSheet、showRotatedText、splitCell、wrapText
XlsxLineLayoutOptions options = new XlsxLineLayoutOptions(false, true, true, true);
//设置PDF转XLSX选项
pdf.ConvertOptions.SetPdfToXlsxOptions(options); //保存PDF为Excel文档
pdf.SaveToFile("PdfToOneExcelSheet.xlsx", FileFormat.XLSX);
}
}
}
【VB.NET】
Imports Spire.Pdf
Imports Spire.Pdf.Conversion Namespace ConvertPdfToExcel Class Program Private Shared Sub Main(ByVal args() As String)
'创建 PdfDocument 类的对象
Dim pdf As PdfDocument = New PdfDocument pdf.LoadFromFile("TableSample.pdf")
'初始化XlsxLineLayoutOptions 类的一个实例,在类构造函数中,将第一个参数convertToMultipleSheet 设置为 false.
'四个参数分别代表:convertToMultipleSheet、showRotatedText、splitCell、wrapText Dim options As XlsxLineLayoutOptions = New XlsxLineLayoutOptions(false, true, true, true)
'设置PDF转XLSX选项
pdf.ConvertOptions.SetPdfToXlsxOptions(options)
'保存PDF为Excel文档
pdf.SaveToFile("PdfToOneExcelSheet.xlsx", FileFormat.XLSX)
End Sub
End Class
End Namespace
文档效果:
原文档

输出文档

注:测试代码中的文件路径为程序Debug路径,文件路径可自定义为其他路径。
C#/VB.NET 将PDF转为Excel的更多相关文章
- C# 将PDF转为Excel
通常,PDF格式的文档能支持的编辑功能不如office文档多,针对PDF文档里面有表格数据的,如果想要编辑表格里面的数据,可以将该PDF文档转为Excel格式,然后编辑.本文,将以C#代码为例,介绍如 ...
- C#/VB.NET 将PDF转为OFD
OFD,全称Open Fixed-layout Document ,是一种可存储.读取以及编辑的国家标准版式的电子文档格式,属于中国的一种自主文件格式,在安全性上有可靠保证.为突破国外技术在我们软硬件 ...
- C#/VB.NET 将Html转为Excel
本文介绍通过C#和VB.NET代码展示将Html转为Excel文档的方法. dll引用 方法1 将 Spire.XLS for .NET 下载到本地,解压,安装.完成安装后,在安装路径下找到BIN文件 ...
- C#/VB.NET 将PDF转为PDF/X-1a:2001
PDF/X-1a是一种PDF文件规范标准,在制作.使用PDF以及印刷时所需要遵循的技术条件,属于PDF/X-1标准下的一个子标准. PDF/X-1标准有由CGATS于1999年制定的PDF/X-1:1 ...
- 【C#/VB.NET】 将PDF转为SVG/Image, SVG/Image转PDF
SVG是一种图形文件格式,它的英文全称为Scalable Vector Graphics,意思为可缩放的矢量图形.它在放大或者改变尺寸的情况下其图形质量不会有所损失,且与 JPG 和 GIF 图像比起 ...
- C# 将PDF转为线性化PDF
线性化PDF文件是PDF文件的一种特殊格式,可以通过Internet更快地进行查看.线性化的PDF,在页面数量很多的情况下,更能突出表现出快速浏览的优势.下面是通过后端.NET程序实现将PDF文件转为 ...
- Java将彩色PDF转为灰度
本文以Java代码为例介绍如何实现将彩色PDF文件转为灰度(黑白)的PDF文件,即:将PDF文档里面的彩色图片或者文字等通过调用PdfGrayConverter.toGrayPdf()方法转为文档页面 ...
- C# 将CSV转为Excel
CSV(Comma Separated Values)文件是一种纯文本文件,包含用逗号分隔的数据,常用于将数据从一个应用程序导入或导出到另一个应用程序.通过将CSV文件转为EXCEL,可执行更多关于数 ...
- vb.net字符串格式转为日期型
vb.net字符串格式转为日期型 比如 "20080815" 转换为"2008-05-15"Dim a As Date Dim s As String = ...
随机推荐
- NodeJS学习日报day4——模块化
// console.log(module); // 执行顺序不同,结果也不同 // module.exports = { // name : 'Cra2iTeT', // hi() { // con ...
- Codeforces Round #741 (Div. 2), problem: (D1) Two Hundred Twenty One (easy version), 1700
Problem - D1 - Codeforces 题意: 给n个符号(+或-), +代表+1, -代表-1, 求最少删去几个点, 使得 题解(仅此个人理解): 1. 这题打眼一看, 肯定和奇 ...
- 前端vue之属性指令、style和class、条件渲染、列表渲染、事件处理、数据双向绑定、表单控制、v-model进阶
今日内容概要 属性指令 style和class 条件渲染 列表渲染 事件处理 数据的双向绑定 v-model进阶 购物车案例 内容详细 1.属性指令 <!DOCTYPE html> < ...
- 接口测试框架实战(一) | Requests 与接口请求构造
1080×388 33.4 KB Requests 是一个优雅而简单的 Python HTTP 库,其实 Python 内置了用于访问网络的资源模块,比如urllib,但是它远不如 Requests ...
- XCTF练习题---WEB---simple_js
XCTF练习题---WEB---simple_js flag:Cyberpeace{786OsErtk12} 解题步骤: 1.观察题目,打开场景 2.打开该场景后发现是一个登录界面,随便输入一个密码, ...
- 【干货】BIOS、UEFI、MBR、GPT、GRUB 到底是什么意思?
公众号关注 「开源Linux」 回复「学习」,有我为您特别筛选的学习资料~ 01 前言 在学习 Linux 系统启动原理之前,我们先了解下与操作系统启动相关的几个概念. 02 与操作系统启动相关的几个 ...
- java高级用法之:JNA中的Memory和Pointer
目录 简介 Pointer 特殊的Pointer:Opaque Memory 总结 简介 我们知道在native的代码中有很多指针,这些指针在JNA中被映射成为Pointer.除了Pointer之外, ...
- Map传参优雅检验,试试json schema validator
背景 笔者目前所在团队的代码年代已久,早年规范缺失导致现在维护成本激增,举一个深恶痛疾的例子就是方法参数使用Map"一撸到底",说多了都是泪,我常常在团队内自嘲"咱硬是把 ...
- 『现学现忘』Git基础 — 25、git log命令参数详解
目录 1.git log命令说明 2.git log命令参数 (1)不带参数 (2)常用显示参数 (3)--pretty参数 (4)--date=参数 (5)筛选参数 git log命令主要用于查看G ...
- scrapy架构与目录介绍、scrapy解析数据、配置相关、全站爬取cnblogs数据、存储数据、爬虫中间件、加代理、加header、集成selenium
今日内容概要 scrapy架构和目录介绍 scrapy解析数据 setting中相关配置 全站爬取cnblgos文章 存储数据 爬虫中间件和下载中间件 加代理,加header,集成selenium 内 ...