加载中...

地址发布 老王说明书 宣传中心
分享各类破解软件/游戏/工具,禁止黄色!
查看: 432|回复: 2
收起左侧

[破解软件] [转载搬运] 批量处理文件后缀名工具/代码 [1+3.91kb][百度盘]

[复制链接]
发表于 2024-9-4 22:38:08 | 显示全部楼层 |阅读模式
下载信息分类
下载方式: 百度盘
来源: 转载搬运
文件数量: 1
资源大小: 3.91kb
解压密码:
解压软件:

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有帐号?免费注册

x
分享一个自己整的批量处理文件后缀名的脚本(以下开始为脚本内代码,可直接复制粘贴使用,也可投币购买):2 j7 L' A8 j9 ]$ a  u# `% F$ b9 C(欢迎访问老王论坛:laowang.vip)

! |- U& i! |- u$ N
' p* [% y$ h- \3 P2 J0 T! \: ^) f6 p2 g' 修改文件后缀名.vbs, V" x7 u% C: K1 P( B5 A- [( P(欢迎访问老王论坛:laowang.vip)
'
( }; l5 ^& S: [+ E! Y% W  _9 H' 功能说明:- t" r# k  i8 y. c7 ~(欢迎访问老王论坛:laowang.vip)
' 该 VBScript 脚本用于修改当前目录及其子目录中所有文件的后缀名。用户可以指定新的文件后缀名,并且可以选择是否处理子目录中的文件。 9 k" F: Z/ A  {# R( a2 C(欢迎访问老王论坛:laowang.vip)
' 如果在同一目录中存在重名文件,脚本会在文件名后添加数字以确保文件名唯一。脚本会跳过后缀名为 .vbs 的文件。) m  U; r" J! u, z3 ]6 S(欢迎访问老王论坛:laowang.vip)
'; g' U6 o3 T7 M. _(欢迎访问老王论坛:laowang.vip)
' 使用说明:+ P4 w3 S1 [1 U# `9 Q7 e5 e(欢迎访问老王论坛:laowang.vip)
' 1. 将此代码保存为 .vbs 文件,例如 `ChangeFileExtension.vbs`。
/ N+ z) p5 o4 E/ ]' 2. 双击运行脚本或通过命令行运行。  D5 o" N" [' P4 ~(欢迎访问老王论坛:laowang.vip)
' 3. 脚本会弹出输入框,提示用户输入新的文件后缀名(不包含点)。
: }3 e) k4 d" `1 |% b! N- h& A' 4. 如果当前目录包含子目录,脚本会询问用户是否也要修改子目录中的文件后缀名。选择“是”以处理子目录中的文件,选择“否”以仅处理当前目录中的文件。
$ b6 l: P9 e* `' 5. 脚本会遍历指定目录及其子目录中的所有文件,跳过后缀名为 .vbs 的文件。对于需要重命名的文件,如果遇到重名,脚本会自动在文件名后添加数字(例如 `(1)`, `(2)` 等),仅在当前目录内处理重名。
; r0 e/ O# [9 B9 \9 T8 l. j4 p' 6. 完成后,脚本会弹出消息框提示操作已成功完成。9 x, V3 e, I9 X, X' {& Q2 C(欢迎访问老王论坛:laowang.vip)

' D( [- v& _% v2 LOption Explicit* Z# E# Q' j1 o" I  X8 M(欢迎访问老王论坛:laowang.vip)
1 I- u3 W! Y1 Y% D- Y8 O(欢迎访问老王论坛:laowang.vip)
' 获取当前目录的路径
0 t. f' x% V6 B9 UDim folderPath$ }0 D; u/ @! ]8 C) ~(欢迎访问老王论坛:laowang.vip)
folderPath = CreateObject("Scripting.FileSystemObject").GetAbsolutePathName(".")
# s4 ?; w# v! N0 h- S) }& p. H# y& I) q" I. ]* K1 R(欢迎访问老王论坛:laowang.vip)
' 获取用户输入的新文件后缀名(不包含点)% W( K" E* t! C) j8 V! y( e, I(欢迎访问老王论坛:laowang.vip)
Dim newExtension# r1 X! t7 F8 @5 m" V! U6 `! W(欢迎访问老王论坛:laowang.vip)
newExtension = InputBox("请输入新的文件后缀名(不包含点),例如 'txt',将所有文件的后缀改为该值。", "设置新的文件后缀名")
" W' W. e2 _" j' t. @8 Z
+ p0 y" j1 ]" U2 S' 如果用户取消了输入框,则退出脚本
, l0 |. Y# f9 }, ^If newExtension = "" Then6 k. w6 T! S; }' c9 b+ v(欢迎访问老王论坛:laowang.vip)
    MsgBox "操作已取消。", vbInformation, "信息"
) `2 R% M+ N3 `: x6 u+ S    WScript.Quit% h5 H. U% b, j8 ~(欢迎访问老王论坛:laowang.vip)
End If
: g7 _  S( f$ @3 u
% H% m4 b" p. n3 l2 V6 y  K' 确保新的后缀名不包含点(.)/ ~3 S+ Z* x; t9 D) H+ Y0 J9 N4 s# ](欢迎访问老王论坛:laowang.vip)
If InStr(newExtension, ".") > 0 Then4 B8 P  m' e; z" y/ k, d0 |(欢迎访问老王论坛:laowang.vip)
    MsgBox "请只输入后缀名,不要包含点(.)。", vbCritical, "错误": v! U9 K$ H1 g(欢迎访问老王论坛:laowang.vip)
    WScript.Quit
2 I# G3 C) ~) _5 ~0 `- W: Z  \End If! W+ d. u$ s) Y: u7 p(欢迎访问老王论坛:laowang.vip)
2 I0 V) K1 G7 u1 F% h  q(欢迎访问老王论坛:laowang.vip)
' 创建 FileSystemObject 对象8 e2 {" L4 }6 ^% T# o/ _" e1 M(欢迎访问老王论坛:laowang.vip)
Dim fso, folder, subFolder
% \% x& ~0 ?6 Q9 pSet fso = CreateObject("Scripting.FileSystemObject")+ u8 ]/ @& }5 F: e+ u# }(欢迎访问老王论坛:laowang.vip)

# d0 P" K8 V2 h4 |8 U! u' 获取当前目录的 Folder 对象) F! N! P2 v2 n* C6 v6 a: }& o(欢迎访问老王论坛:laowang.vip)
Set folder = fso.GetFolder(folderPath)
- f0 w: F  N7 d# U3 ?
& w/ g4 E. a" @! C) M6 m& q5 h7 U' 检查当前目录是否包含子目录& J5 S- ], \& i8 k4 y8 k. t(欢迎访问老王论坛:laowang.vip)
Dim hasSubFolders9 ]" H- L) t3 d- g" d  x(欢迎访问老王论坛:laowang.vip)
hasSubFolders = folder.SubFolders.Count > 0) _' P& R/ P6 M, u; F(欢迎访问老王论坛:laowang.vip)
2 [3 @. n" t- |(欢迎访问老王论坛:laowang.vip)
' 如果当前目录包含子目录,则提示用户是否也要处理子目录中的文件
! B1 `% K, S% b6 P" I! W* m/ @, qDim modifySubFolders8 c( F' x$ \* ^3 B& O9 f(欢迎访问老王论坛:laowang.vip)
If hasSubFolders Then% M8 _* y4 k$ Q- M(欢迎访问老王论坛:laowang.vip)
    modifySubFolders = MsgBox("当前目录包含子目录。是否也要修改子目录中的文件后缀名?", vbYesNo + vbQuestion, "修改子目录中的文件")
6 x, E9 k1 d# m- w" R6 mEnd If
. U- u! Y1 j, d  Y7 X$ ~
, x3 v. @$ f2 z1 _$ x( h; h. r2 t' 处理当前目录中的所有文件$ C; w! ^; h' R(欢迎访问老王论坛:laowang.vip)
Call ProcessFiles(folder, newExtension)/ z( n* z" v2 f9 O7 I" Z(欢迎访问老王论坛:laowang.vip)
: X9 u: G: V* r' _9 t# T(欢迎访问老王论坛:laowang.vip)
' 如果用户选择是,并且当前目录包含子目录,则遍历所有子目录并处理其中的文件
: w; L: l( N# SIf hasSubFolders And modifySubFolders = vbYes Then
: `' Q3 `+ b& ]2 l# Y& c: z    For Each subFolder In folder.SubFolders" K! t  R. B0 z$ X  l# b: A(欢迎访问老王论坛:laowang.vip)
        Call ProcessFiles(subFolder, newExtension)% {" L/ f/ K& |: G1 \(欢迎访问老王论坛:laowang.vip)
    Next% R& h& _  g! ?(欢迎访问老王论坛:laowang.vip)
End If9 q' Z2 M% |- E(欢迎访问老王论坛:laowang.vip)

$ j1 u1 c1 C) c& \+ ?' 提示用户操作完成# K8 C, L  r& n' j; b% O(欢迎访问老王论坛:laowang.vip)
MsgBox "所有文件的后缀名已成功更改为 '" & newExtension & "'。", vbInformation, "完成"9 X" d4 Y! Q" ^(欢迎访问老王论坛:laowang.vip)
$ R) i' ~* ~- o" @% [0 b( L(欢迎访问老王论坛:laowang.vip)
' 处理指定目录中的文件的子程序
9 u- {; K3 }- B& CSub ProcessFiles(targetFolder, newExtension); O0 T7 q5 F; C; a+ A7 ](欢迎访问老王论坛:laowang.vip)
    Dim file, oldName, baseName, currentExtension, newName, newFileName, counter5 C: F8 B0 |1 _$ d9 ~% `1 M2 V(欢迎访问老王论坛:laowang.vip)
    Dim nameDict
' K* {/ l; T5 L- X6 |' ~& w% h. i* I( c(欢迎访问老王论坛:laowang.vip)
    ' 创建一个字典对象,用于存储当前目录内的文件名6 K9 g  I$ m/ Q(欢迎访问老王论坛:laowang.vip)
    Set nameDict = CreateObject("Scripting.Dictionary"): p  M2 S# H7 c* {$ \/ M(欢迎访问老王论坛:laowang.vip)
3 M. |" p4 @8 W1 q(欢迎访问老王论坛:laowang.vip)
    ' 遍历指定目录下的所有文件
) i$ V% v( L' T3 j0 U* d  d    For Each file In targetFolder.Files
, V9 j" x' [9 v# h: `4 f) a        ' 跳过后缀名为 .vbs 的文件
, W, M: k+ O+ k; ^) l: V% ?% ~1 h        If LCase(fso.GetExtensionName(file)) <> "vbs" Then+ d7 x3 |- u  R(欢迎访问老王论坛:laowang.vip)
            ' 获取文件的旧名称、基础名称和当前后缀名
9 |! Y" X5 F4 X; I8 R2 G& F            oldName = file.Name
  ~0 \, z3 C0 `" b: I5 j; a& y            baseName = fso.GetBaseName(file): O" l1 \! H+ N$ t(欢迎访问老王论坛:laowang.vip)
            currentExtension = LCase(fso.GetExtensionName(file))' ]7 M) @4 q% Y$ O( i(欢迎访问老王论坛:laowang.vip)
  y# f/ J) E  L) B0 b6 o( o1 L. p(欢迎访问老王论坛:laowang.vip)
            ' 如果当前后缀名与新后缀名不同,则进行重命名
& F% ~8 U' i! X. T( _3 R            If currentExtension <> LCase(newExtension) Then/ {/ N. Q$ M( b* W: N! ~' z(欢迎访问老王论坛:laowang.vip)
                ' 创建新的文件名
, l, A  `+ }* R+ L( R3 U5 b                newName = baseName & "." & newExtension
  [) _* H. |+ G# R* i
+ T( t; B, x4 }8 E                ' 检查是否已有同名文件,如果有,则处理重名
. |+ S" I# ?7 e                newFileName = newName
9 Z' j) g  e* @                counter = 1! T' x& ~: F8 o( |# p- F(欢迎访问老王论坛:laowang.vip)
                ' 确保新的文件名唯一1 C; o8 I# d& e& S1 E) w" I(欢迎访问老王论坛:laowang.vip)
                While nameDict.Exists(newFileName) Or fso.FileExists(targetFolder.Path & "\" & newFileName)
) x8 ^, b; R# H4 d% ~9 ^5 W                    newFileName = baseName & "(" & counter & ")." & newExtension
! _0 ~: h' L( q- P. _. C                    counter = counter + 1
" z3 j6 U2 K2 ?& w  ]' L- I                Wend/ p8 ^+ p  T- n( s(欢迎访问老王论坛:laowang.vip)

. g" i" {$ g+ ?                ' 记录新的文件名! {, @9 _1 k! \# ~. k(欢迎访问老王论坛:laowang.vip)
                nameDict.Add newFileName, True
% Q8 Q5 B# N$ T+ v* A+ j* f* b0 B3 j' H7 ~(欢迎访问老王论坛:laowang.vip)
                ' 重命名文件
- v) A$ K. X7 N1 r7 J4 g+ l! |                file.Name = newFileName* ^8 X) ^. ^7 k(欢迎访问老王论坛:laowang.vip)
            End If
6 _( v4 ^3 A1 J        End If
0 m. q9 t$ R, L+ L* `    Next6 X3 X- d5 z/ q) P7 Q( |(欢迎访问老王论坛:laowang.vip)
End Sub' \# j9 ?: n- l0 Y2 c( `(欢迎访问老王论坛:laowang.vip)

2 i5 y7 A4 m2 m* V* q7 y5 r. D
6 D& |6 L; V& f) Q7 G# L% \; h. |0 O7 }/ j3 ~(欢迎访问老王论坛:laowang.vip)
回复

使用道具 举报

发表于 2024-9-5 23:00:55 | 显示全部楼层
建立一个文本文档 输入ren *.更改前的格式 *.更改后的格式 保存退出 更改TXT后缀为bat
回复 支持 反对

使用道具 举报

发表于 2024-9-6 12:41:25 | 显示全部楼层
微软store里面装个微软官方的powertoys里面什么工具都有,哪里需要这么麻烦哦: E) u) l; f! b5 H/ l(欢迎访问老王论坛:laowang.vip)
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 免费注册
点击进行验证

本版积分规则

我们不生产资源,只做资源的搬运工。

tags标签-春满四合院-AvGood-Archiver-小黑屋- |网站地图