当前位置: 首页 > news >正文 做一个简单的网站多少钱网站登录怎么保存用户名密码 news 2025/10/21 6:27:13 做一个简单的网站多少钱,网站登录怎么保存用户名密码,百度收录左侧带图片的网站,台州市知名专业做网站目录 使用工具 C# 提取多个PDF表单域的数据 C# 提取特定PDF表单域的数据 PDF表单是一种常见的数据收集工具#xff0c;广泛应用于调查问卷、业务合同等场景。凭借出色的跨平台兼容性和标准化特点#xff0c;PDF表单在各行各业中得到了广泛应用。然而#xff0c;当需要整合…目录 使用工具 C# 提取多个PDF表单域的数据 C# 提取特定PDF表单域的数据 PDF表单是一种常见的数据收集工具广泛应用于调查问卷、业务合同等场景。凭借出色的跨平台兼容性和标准化特点PDF表单在各行各业中得到了广泛应用。然而当需要整合、分析或导入大量已填写的表单数据时传统的手动处理方式不仅耗时而且容易出错。因此掌握自动提取PDF表单数据的方法不仅能大幅提高工作效率还能确保数据处理的准确性。本文将探讨如何使用C# 实现自动化PDF表单数据提取流程。 使用工具C# 提取多个PDF表单域的数据C# 提取特定PDF表单域的数据 使用工具 要使用C# 提取PDF表单的数据需要用到合适的PDF文档处理库。本文所使用的是Spire.PDF for .NET库。该库主要用于在 .NET 应用程序中创建、读取、编辑、转换 和打印PDF 文档。 安装 Spire.PDF for .NET 你可以在 NuGet 包管理器中运行以下命令安装 Spire.PDF for .NET PM Install-Package Spire.PDF 如果你已经安装了该库并希望升级到最新版本可以使用以下命令 PM Update-Package Spire.PDF C# 提取多个PDF表单域的数据 PDF 表单可能包含多种类型的域例如文本框、列表框、下拉框、单选按钮和复选框。每种域类型需要采用不同的方法来提取其数据。以下是提取这些类型的域的数据时所使用的关键属性 文本框Text Boxes 通过 PdfTextBoxFieldWidget 对象的 Name 和 Text 属性获取文本框的名称及其对应的值。列表框List Boxes 通过 PdfListBoxFieldWidget 对象的 Name、Values 和 SelectedValue 属性提取列表框的名称、所有选项及选定的选项。下拉框Combo Boxes 通过 PdfComboBoxFieldWidget 对象的 Name、Values 和 SelectedValue 属性获取下拉框的名称、所有选项及选定的选项。单选按钮Radio Buttons 通过 PdfRadioButtonListFieldWidget 对象的 Name 和 SelectedValue 属性获取单选按钮的名称和选定的值。复选框Checkboxes 通过 PdfCheckBoxFieldWidget 对象的 Name 和 Checked 属性提取复选框的名称及其状态是否被选中。 以下代码展示了如何使用 C# 从多个 PDF 表单域中提取数据 using Spire.Pdf; using Spire.Pdf.Fields; using Spire.Pdf.Widget; using System.Collections.Generic; using System.IO;namespace ExtractPdfFormData {internal class Program{static void Main(string[] args){// 初始化 PdfDocument 类实例用于加载和处理 PDF 文件using (PdfDocument doc new PdfDocument()){// 加载包含表单域的 PDF 文件doc.LoadFromFile(表单.pdf);// 创建列表存储提取的域名称及其值Liststring content new Liststring();// 获取 PDF 文档的表单对象PdfFormWidget formWidget doc.Form as PdfFormWidget;// 检查表单对象中是否包含表单域if (formWidget?.FieldsWidget.Count 0){// 遍历文档中的所有表单域for (int i 0; i formWidget.FieldsWidget.List.Count; i){// 获取当前表单域PdfField field formWidget.FieldsWidget[i];// 如果当前表单域为空跳过该域if (field null) continue;// 提取当前表单域的内容名称和值Liststring currentFieldContent ExtractFieldContent(field);// 如果提取到域内容则将其添加到 content 列表中if (currentFieldContent.Count 0){content.AddRange(currentFieldContent);// 如果不是最后一个表单域添加一个空行用于分隔不同域的内容if (i formWidget.FieldsWidget.List.Count - 1){content.Add(); // 添加空行分隔不同域的内容}}}}// 将提取的内容逐行写入文本文件File.WriteAllLines(提取域数据.txt, content);}}/// summary/// 提取单个 PDF 表单域的内容域名和域值/// 根据不同的表单域类型文本框、列表框、下拉框、单选按钮、复选框提取相应的值/// /summary/// param namefield当前的 PDF 表单域对象/param/// returns包含域内容的字符串列表/returnsprivate static Liststring ExtractFieldContent(PdfField field){// 初始化列表来存储当前表单域的内容Liststring fieldContent new Liststring();// 检查该域是否为文本框if (field is PdfTextBoxFieldWidget textBoxField){fieldContent.Add($文本框名称{textBoxField.Name});fieldContent.Add($文本框值{textBoxField.Text});}// 检查该域是否为列表框else if (field is PdfListBoxWidgetFieldWidget listBoxField){fieldContent.Add($列表框名称{listBoxField.Name});fieldContent.Add(列表框选项);// 遍历并提取列表框中的所有选项foreach (PdfListWidgetItem item in listBoxField.Values){fieldContent.Add(${item.Value});}fieldContent.Add($列表框选中项{listBoxField.SelectedValue});}// 检查该域是否为下拉框else if (field is PdfComboBoxWidgetFieldWidget comboBoxField){fieldContent.Add($下拉框名称{comboBoxField.Name});fieldContent.Add(下拉框选项);// 遍历并提取下拉框中的所有选项foreach (PdfListWidgetItem item in comboBoxField.Values){fieldContent.Add(${item.Value});}fieldContent.Add($下拉框选中项{comboBoxField.SelectedValue});}// 检查该域是否为单选按钮else if (field is PdfRadioButtonListFieldWidget radioBtnField){fieldContent.Add($单选按钮名称{radioBtnField.Name});fieldContent.Add($单选按钮选中项{radioBtnField.SelectedValue});}// 检查该域是否为复选框else if (field is PdfCheckBoxWidgetFieldWidget checkBoxField){fieldContent.Add($复选框名称{checkBoxField.Name});fieldContent.Add($复选框状态{(checkBoxField.Checked ? 选中 : 未选中)});}// 返回当前表单域的内容return fieldContent;}} }C# 提取特定PDF表单域的数据 如果你需要从特定的表单域中提取数据可以通过该表单域的名称直接访问它然后通过判断其类型对应地获取其内容。 以下代码展示了如何使用C# 从名为 “国家” 的PDF表单域中提取数据 using Spire.Pdf; using Spire.Pdf.Fields; using Spire.Pdf.Widget; using System.Collections.Generic; using System.IO;namespace ExtractSpecificFormData {internal class Program{static void Main(string[] args){// 初始化 PdfDocument 类实例用于加载和处理 PDF 文件using (PdfDocument doc new PdfDocument()){// 加载包含表单域的 PDF 文件doc.LoadFromFile(表单.pdf);// 创建列表来存储提取的表单域名称及其值Liststring content new Liststring();// 获取 PDF 文档的表单对象PdfFormWidget formWidget doc.Form as PdfFormWidget;// 指定域名称string fieldName 国家;// 检查表单对象中是否包含表单域if (formWidget?.FieldsWidget.Count 0){// 通过名称访问特定表单域PdfField specificField formWidget.FieldsWidget[fieldName];// 确保域存在再进行处理if (specificField ! null){// 提取特定表单域的内容名称和值Liststring specificFieldContent ExtractFieldContent(specificField);// 如果提取到内容则将其添加到 content 列表中if (specificFieldContent.Count 0){content.AddRange(specificFieldContent);}}else{content.Add($未找到域 {fieldName});}}else{content.Add(PDF 表单中未找到任何域);}// 将提取的内容逐行写入文本文件File.WriteAllLines(提取特定域数据.txt, content);}}/// summary/// 提取单个 PDF 表单域的内容名称和值/// 处理不同类型的表单域如文本框、列表框、下拉框、单选按钮和复选框/// /summary/// param namefield当前 PDF 表单域对象/param/// returns包含表单域内容的字符串列表/returnsprivate static Liststring ExtractFieldContent(PdfField field){// 初始化列表来存储当前表单域的内容Liststring fieldContent new Liststring();// 检查该域是否为文本框if (field is PdfTextBoxFieldWidget textBoxField){// 将文本框的名称和值添加到列表中fieldContent.Add($文本框名称{textBoxField.Name});fieldContent.Add($文本框值{textBoxField.Text});}// 检查该域是否为列表框else if (field is PdfListBoxWidgetFieldWidget listBoxField){fieldContent.Add($列表框名称{listBoxField.Name});fieldContent.Add(列表框选项);foreach (PdfListWidgetItem item in listBoxField.Values){fieldContent.Add(${item.Value});}fieldContent.Add($列表框选中项{listBoxField.SelectedValue});}// 检查该域是否为下拉框else if (field is PdfComboBoxWidgetFieldWidget comboBoxField){fieldContent.Add($下拉框名称{comboBoxField.Name});fieldContent.Add(下拉框选项);foreach (PdfListWidgetItem item in comboBoxField.Values){fieldContent.Add(${item.Value});}fieldContent.Add($下拉框选中项{comboBoxField.SelectedValue});}// 检查该域是否为单选按钮else if (field is PdfRadioButtonListFieldWidget radioBtnField){fieldContent.Add($单选按钮名称{radioBtnField.Name});fieldContent.Add($单选按钮选中项{radioBtnField.SelectedValue});}// 检查该域是否为复选框else if (field is PdfCheckBoxWidgetFieldWidget checkBoxField){fieldContent.Add($复选框名称{checkBoxField.Name});fieldContent.Add($复选框状态{(checkBoxField.Checked ? 选中 : 未选中)});}// 返回当前表单域的内容列表return fieldContent;}} }以上就是使用C# 读取PDF表单域数据的全部内容。感谢阅读 文章转载自: http://www.morning.dnzyx.cn.gov.cn.dnzyx.cn http://www.morning.bkjhx.cn.gov.cn.bkjhx.cn http://www.morning.tdxlj.cn.gov.cn.tdxlj.cn http://www.morning.wrbnh.cn.gov.cn.wrbnh.cn http://www.morning.c7623.cn.gov.cn.c7623.cn http://www.morning.jlschmy.com.gov.cn.jlschmy.com http://www.morning.mdmqg.cn.gov.cn.mdmqg.cn http://www.morning.jjmrx.cn.gov.cn.jjmrx.cn http://www.morning.qwwcf.cn.gov.cn.qwwcf.cn http://www.morning.mdjtk.cn.gov.cn.mdjtk.cn http://www.morning.qkgwz.cn.gov.cn.qkgwz.cn http://www.morning.kcwkt.cn.gov.cn.kcwkt.cn http://www.morning.bklkt.cn.gov.cn.bklkt.cn http://www.morning.fbmjw.cn.gov.cn.fbmjw.cn http://www.morning.dhckp.cn.gov.cn.dhckp.cn http://www.morning.gzzncl.cn.gov.cn.gzzncl.cn http://www.morning.bfjtp.cn.gov.cn.bfjtp.cn http://www.morning.wcgcm.cn.gov.cn.wcgcm.cn http://www.morning.pgfkl.cn.gov.cn.pgfkl.cn http://www.morning.ychrn.cn.gov.cn.ychrn.cn http://www.morning.pghgq.cn.gov.cn.pghgq.cn http://www.morning.rykgh.cn.gov.cn.rykgh.cn http://www.morning.grynb.cn.gov.cn.grynb.cn http://www.morning.hnkkf.cn.gov.cn.hnkkf.cn http://www.morning.rrrrsr.com.gov.cn.rrrrsr.com http://www.morning.madamli.com.gov.cn.madamli.com http://www.morning.yqjjn.cn.gov.cn.yqjjn.cn http://www.morning.tnwgc.cn.gov.cn.tnwgc.cn http://www.morning.tdldh.cn.gov.cn.tdldh.cn http://www.morning.qtwd.cn.gov.cn.qtwd.cn http://www.morning.bmmyx.cn.gov.cn.bmmyx.cn http://www.morning.hmwjk.cn.gov.cn.hmwjk.cn http://www.morning.zcqgf.cn.gov.cn.zcqgf.cn http://www.morning.wttzp.cn.gov.cn.wttzp.cn http://www.morning.nbnq.cn.gov.cn.nbnq.cn http://www.morning.qxkjy.cn.gov.cn.qxkjy.cn http://www.morning.tbhlc.cn.gov.cn.tbhlc.cn http://www.morning.bqrd.cn.gov.cn.bqrd.cn http://www.morning.rbgwj.cn.gov.cn.rbgwj.cn http://www.morning.kstgt.cn.gov.cn.kstgt.cn http://www.morning.kgqpx.cn.gov.cn.kgqpx.cn http://www.morning.sbqrm.cn.gov.cn.sbqrm.cn http://www.morning.bpmtr.cn.gov.cn.bpmtr.cn http://www.morning.wgxtz.cn.gov.cn.wgxtz.cn http://www.morning.nwfpl.cn.gov.cn.nwfpl.cn http://www.morning.lcbnb.cn.gov.cn.lcbnb.cn http://www.morning.qjngk.cn.gov.cn.qjngk.cn http://www.morning.bykqg.cn.gov.cn.bykqg.cn http://www.morning.njhyk.cn.gov.cn.njhyk.cn http://www.morning.mdgb.cn.gov.cn.mdgb.cn http://www.morning.fcxt.cn.gov.cn.fcxt.cn http://www.morning.fqtdz.cn.gov.cn.fqtdz.cn http://www.morning.hkng.cn.gov.cn.hkng.cn http://www.morning.c7491.cn.gov.cn.c7491.cn http://www.morning.aa1585.com.gov.cn.aa1585.com http://www.morning.xqknl.cn.gov.cn.xqknl.cn http://www.morning.srkqs.cn.gov.cn.srkqs.cn http://www.morning.qpqcq.cn.gov.cn.qpqcq.cn http://www.morning.ztmnr.cn.gov.cn.ztmnr.cn http://www.morning.skql.cn.gov.cn.skql.cn http://www.morning.tfbpz.cn.gov.cn.tfbpz.cn http://www.morning.zwdrz.cn.gov.cn.zwdrz.cn http://www.morning.yzzfl.cn.gov.cn.yzzfl.cn http://www.morning.rnribht.cn.gov.cn.rnribht.cn http://www.morning.bdtpd.cn.gov.cn.bdtpd.cn http://www.morning.wtrjq.cn.gov.cn.wtrjq.cn http://www.morning.fnjrh.cn.gov.cn.fnjrh.cn http://www.morning.gcfg.cn.gov.cn.gcfg.cn http://www.morning.bsjxh.cn.gov.cn.bsjxh.cn http://www.morning.qfbzj.cn.gov.cn.qfbzj.cn http://www.morning.tkgjl.cn.gov.cn.tkgjl.cn http://www.morning.tznlz.cn.gov.cn.tznlz.cn http://www.morning.kdnrc.cn.gov.cn.kdnrc.cn http://www.morning.c7629.cn.gov.cn.c7629.cn http://www.morning.yrmpz.cn.gov.cn.yrmpz.cn http://www.morning.hrpjx.cn.gov.cn.hrpjx.cn http://www.morning.rqzyz.cn.gov.cn.rqzyz.cn http://www.morning.itvsee.com.gov.cn.itvsee.com http://www.morning.yltyr.cn.gov.cn.yltyr.cn http://www.morning.ldynr.cn.gov.cn.ldynr.cn 查看全文 http://www.tj-hxxt.cn/news/236121.html 相关文章: 网站推广托管公司山西建设工程信息网站 合肥市城乡建设局网站打不开兰州app 简述网站开发的几个步骤asp网站制作 做性的视频网站通过网站编辑发稿是怎么做的 凡科是免费做网站吗建站网址是多少 建设网站包维护网页设计培训怎么做好 越秀网站建设价格三门峡做网站 盐城那里做网站好点建设自动弹出qq对话框的网站 长安网站建设定制芜湖先锋网站两学一做 泰州专业网站建设公司想重装wordpress asp网站管理系统破解版网站策划书籍推荐 太原做网站联系方式云南网站制作公司 免费1级做爰片免费网站佛山网站设计 网站建设费用做什么科目asp大型网站开发 徐州做网站的设计师网络搭建教学视频 松江做营销网站seo优化关键词0 网站内容告知书造价统计报表在哪个网站上做 中企动力双语网站建站公司论坛 找施工队伍去什么网站多个wordpress共用一个数据库前缀 网站建设招标需求新楼盘 山西众邦建设集团网站外贸进口流程 找做报纸的背景图去什么网站豪柏大厦做网站的公司 校园文化设计公司公司排名WordPress全面优化 从化建设局网站关停wordpress 自动删除文章 推广的网站有哪些wordpress 评论贴图 做相片软件网站长沙电子商务公司网站制作 丹灶网站建设案例保安公司网站如何做 如何将vs做的网站备份出来6桂电做网站的毕设容易过嘛 WordPress手机缩略图设置网站建设优化的书籍 宜昌建设网站如何用个门户网站做销售