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

Sprie for .net8.0填报项目验收材料

其实这从技术层面没什么好讲的,会开发的都会弄。只是我觉得这样的工作交给一个不懂开发项目经理来做,那这项目经理只有哭!

项目情况是一个大型国企的项目验收。大家都知道甲方都是不做选择,一句话:“我全都要!”。于是这个项目就有了几百个doc,docx,pdf,xmind,xlsx等等,有这么多文件都没什么好说的。

我在填最后的验收材料清单(docx文件)的时候看到一张表,真的让我觉得非常的无语。

序号资料分类资料编号资料名称页数是否原件
1分类XXX01XXXX100

发现没有这表格要填文件的页数,如果就几个文件也就算了。由于软考高项‘信息系统项目管理师’这个考试是没有技术门槛的,所以很多非本专业的人都考了这个证,几百个文件对于一个不懂技术的项目经理那我只能恭喜他喜提加班了。

下面讲下这活我怎么干的

  1. 先用everything把文件列表获取到。
  2. 粘贴到vscode中保存到一个txt里面。
  3. 用vs起了一个vb.net(你也可以用c#,我不喜欢c#所以就用vb)控制台项目,nuget引入sprie.doc,sprie.pdf,我需要统计这两种文件的页数。
  4. 输出到控制台复制到vscode里面,正则格式成我需要的列,选择粘贴到word里面。

整个过程其实没什么技术含量,只遇到一个小问题,就是spire的基础许可处理docx文件时,文件的段落不能大于500。我没去找破解,果断编辑了超过500个段落的文件。

代码丢这里有需要的可以直接用

Imports System.IO
Imports Spire.Doc
Imports Spire.PdfModule ProgramSub Main()'替换为你的文本文件路径Dim fileListPath As String = "D:\Code\getPages\list.txt"   ProcessFilesFromList(fileListPath)Console.ReadLine()End Sub' 从文件列表中读取路径并处理文件  Private Sub ProcessFilesFromList(fileListPath As String)If Not File.Exists(fileListPath) ThenConsole.WriteLine("File list not found: " & fileListPath)ReturnEnd IfDim lines As String() = File.ReadAllLines(fileListPath)For Each line In linesDim filePath As String = line.Trim()If String.IsNullOrWhiteSpace(filePath) ThenContinue ForEnd IfIf Not File.Exists(filePath) ThenConsole.WriteLine("File not found: " & filePath)Continue ForEnd IfDim fileExtension As String = Path.GetExtension(filePath).ToLower()Select Case fileExtensionCase ".doc", ".docx"ProcessWordFile(filePath)Case ".pdf"ProcessPdfFile(filePath)Case ElseConsole.WriteLine("File: " & filePath & " is not supported.")End SelectNextEnd Sub' 处理Word文件并打印页数  Private Sub ProcessWordFile(filePath As String)Dim document As New Document()document.LoadFromFile(filePath)Dim pageCount As Integer = document.PageCountConsole.WriteLine("File: " & filePath & ", Total pages: " & pageCount)document.Close()End Sub' 处理PDF文件并打印页数  Private Sub ProcessPdfFile(filePath As String)Dim pdfPageCount As Integer = GetPdfPageCount(filePath)Console.WriteLine("File: " & filePath & ", Total pages: " & pdfPageCount & "\n")End Sub'获取PDF文件的页数  Private Function GetPdfPageCount(filePath As String) As IntegerDim pdf As New PdfDocument()pdf.LoadFromFile(filePath)Return pdf.Pages.CountEnd Function
End Module

http://www.mrgr.cn/news/27802.html

相关文章:

  • FFmpeg 4.3 音视频-多路H265监控录放C++开发十四,总结编码过程,从摄像头获得数据后,转成AVFrame,然后再次转成AVPacket,
  • Sqlserver 操作大数据量表,具体操作时间和服务器的配置等都有关系
  • lab2:docker基础实战
  • 直流保护电路设计及保护器件参数说明和选型
  • 2024 CCF中国开源大会“开源科学计算与系统建模openSCS”分论坛成功举办
  • iOS swift开发--- 加载PDF文件并显示内容
  • (批处理)设置延时+设置关机倒计时
  • 【Linux】多路转接epoll
  • 【智路】智路OS air-edge 开发者手册 功能概述
  • 人脸防伪检测系统源码分享
  • USB组合设备——串口+鼠标+键盘
  • web安卓逆向之必学CSS基础知识
  • 笔试强训day13
  • CentO S入门必备基础知识
  • Linux07
  • 数据结构-树(基础,分类,遍历)
  • 【STM32】DAC数字模拟转换
  • Oracle从入门到放弃
  • Spring Boot集成Akka Cluster快速入门Demo
  • C语言指针和数组梳理
  • 基于双向RRT算法的三维空间最优路线规划matlab仿真
  • 北极星计划的回响:从Leap Motion到Midjourney的AI 3D硬件梦想
  • 数据库DDL语句
  • 讨论人机交互研究中大语言模型的整合与伦理问题
  • 算子加速(3):自定义cuda扩展
  • 新160个crackme - 057-bbbs-crackme04