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

菜狗的脚步学习

文章目录

  • 一、pdf到h文件转换并恢复
  • 二、
  • 三、

一、pdf到h文件转换并恢复

编写一个bat,将当前文件的.pdf文件后缀改为.h文件,然后将当前文件下的.h文件全部打开,再依次关闭,待所有.h文件都关闭后,再将.h文件改为.pdf后缀

以下是一个能够完成你所要求操作的批处理文件。这个批处理文件会先把当前目录下的所有.pdf文件后缀改成.h,接着打开这些.h文件,随后依次关闭它们,等所有.h文件都关闭之后,再把.h文件改回.pdf后缀。

@echo off
setlocal enabledelayedexpansion:: 创建一个临时文件来存储原始文件名
set "tempFile=renamelist.tmp"
if exist "%tempFile%" del /f /q "%tempFile%":: 重命名.pdf为.h并记录原始文件名
echo 正在将.pdf文件重命名为.h文件...
for %%f in (*.pdf) do (echo %%f>>"%tempFile%"ren "%%f" "%%~nf.h"
):: 打开所有.h文件
echo 正在打开.h文件...
for %%h in (*.h) do (start "" "%%h"
)echo 请查看文件内容,按任意键继续关闭文件...
pause >nul:: 关闭所有.h文件
echo 正在关闭.h文件...
taskkill /f /im notepad.exe >nul 2>&1:: 等待一段时间确保文件已关闭
timeout /t 2 /nobreak >nul:: 重命名.h为.pdf
echo 正在将.h文件重命名回.pdf文件...
for /f "delims=" %%o in ('type "%tempFile%"') do (set "original=%%o"ren "!original:~0,-4!.h" "!original!"
):: 删除临时文件
if exist "%tempFile%" del /f /q "%tempFile%"echo 操作已完成!

注意:另存为为GB18030
![(https://i-blog.csdnimg.cn/direct/993ee3909fbe4b7abac25e50a27001b5.png)

代码功能解析

  1. 变量与临时文件设置

    • setlocal enabledelayedexpansion:启用延迟环境变量扩展,以在循环内部正确处理变量。
    • 创建临时文件renamelist.tmp,用于存储原始的.pdf文件名。
  2. 文件重命名与记录

    • 遍历当前目录下所有.pdf文件,将文件名写入临时文件。
    • 使用ren命令将.pdf文件重命名为.h文件,保留原文件名(不含扩展名)。
  3. 文件打开操作

    • 使用start命令打开所有.h文件,默认会用记事本或关联程序打开。
  4. 文件关闭操作

    • 脚本暂停并提示用户按任意键继续,以便用户有时间查看文件内容。
    • 使用taskkill命令强制关闭所有记事本进程(假设.h文件由记事本打开)。
  5. 恢复文件扩展名

    • 读取临时文件中的原始文件名,将对应的.h文件重命名回.pdf扩展名。
    • 删除临时文件,清理操作痕迹。

使用说明

  1. 将上述代码保存为.bat文件(例如pdf_rename.bat),并放在包含.pdf文件的目录中。
  2. 双击运行该批处理文件,它会自动完成所有操作。
  3. 在文件打开后,你可以查看内容,按任意键后文件将被关闭并恢复原名。

注意事项

  • 该脚本假设.h文件由记事本打开,若使用其他程序打开,需修改taskkill命令中的进程名。
  • 确保临时文件名renamelist.tmp不会与现有文件冲突。
  • 操作过程中请不要手动删除临时文件,否则可能导致部分文件无法恢复原名。

二、

三、

http://www.xdnf.cn/news/5781.html

相关文章:

  • 【android bluetooth 框架分析 02】【Module详解 7】【VendorSpecificEventManager 模块介绍】
  • 前端开发避坑指南:React 代理配置常见问题与解决方案
  • BFS算法篇——打开智慧之门,BFS算法在拓扑排序中的诗意探索(上)
  • 机器学习——聚类算法练习题
  • [Java实战]Spring Boot 3构建 RESTful 风格服务(二十)
  • java使用 FreeMarker 模板生成包含图片的 `.doc` 文件
  • RustDesk:开源电脑远程控制软件
  • 端侧智能重构智能监控新路径 | 2025 高通边缘智能创新应用大赛第三场公开课来袭!
  • 霍夫圆变换全面解析(OpenCV)
  • 6. 多列布局/用户界面 - 杂志风格文章布局
  • 手机换IP真的有用吗?可以干什么?
  • spark-local模式
  • WM_TIMER定时器消息优先级低,可能会被系统丢弃,导致定时任务无法正常执行
  • T-BOX硬件方案深度解析:STM32与SD NAND Flash存储的完美搭配
  • Linux中find命令用法核心要点提炼
  • spark-standalone
  • http断点续传
  • Games101作业四
  • 在Ubuntu服务器上部署Label Studio
  • 从SAM看交互式分割与可提示分割的区别与联系:Interactive Segmentation Promptable Segmentation
  • Java基础(IO)
  • Android Native 之 自定义进程
  • 【氮化镓】电子辐照下温度对GaN位移阈能的影响
  • 开源网络地图可视化第五章学习指南
  • 【认知思维】光环效应:第一印象的持久力量
  • MySQL 8.0 OCP 1Z0-908 题目解析(2)
  • SpringBoot整合MQTT实战:基于EMQX实现双向设备通信(附源码)
  • QEMU模拟32位ARM实现自定义系统调用
  • 基于STM32、HAL库的PCM3060PWR 音频接口芯片驱动程序设计
  • 深度学习计算