加载中...

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

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

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

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

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

x
分享一个自己整的批量处理文件后缀名的脚本(以下开始为脚本内代码,可直接复制粘贴使用,也可投币购买):
* j' c( h9 V* Z+ M" X6 V
" U& ?) Z2 I4 y1 y9 l! ?- }8 Q6 R0 e7 i" K3 n- w(欢迎访问老王论坛:laowang.vip)
' 修改文件后缀名.vbs6 W5 @8 ?: F  E1 p2 V8 E(欢迎访问老王论坛:laowang.vip)
'% E5 l6 d" q" m' d( j& |(欢迎访问老王论坛:laowang.vip)
' 功能说明:
4 {' y$ F- v  H' 该 VBScript 脚本用于修改当前目录及其子目录中所有文件的后缀名。用户可以指定新的文件后缀名,并且可以选择是否处理子目录中的文件。 5 G5 ], a/ X* o6 [- k& m(欢迎访问老王论坛:laowang.vip)
' 如果在同一目录中存在重名文件,脚本会在文件名后添加数字以确保文件名唯一。脚本会跳过后缀名为 .vbs 的文件。6 T( B  Q% F# Z1 {+ M1 b0 Z(欢迎访问老王论坛:laowang.vip)
'
, s, ?, F( G6 S2 N' 使用说明:6 ~& @3 J9 W: L& Q# n6 X% c(欢迎访问老王论坛:laowang.vip)
' 1. 将此代码保存为 .vbs 文件,例如 `ChangeFileExtension.vbs`。) J  {  {6 x' L9 A$ X- T( f(欢迎访问老王论坛:laowang.vip)
' 2. 双击运行脚本或通过命令行运行。
7 D  F3 H6 i$ D3 Y: P9 b' 3. 脚本会弹出输入框,提示用户输入新的文件后缀名(不包含点)。
! F+ l8 R1 A1 o& i  Z6 A' 4. 如果当前目录包含子目录,脚本会询问用户是否也要修改子目录中的文件后缀名。选择“是”以处理子目录中的文件,选择“否”以仅处理当前目录中的文件。
; {) a3 v1 |, ~9 j7 k' 5. 脚本会遍历指定目录及其子目录中的所有文件,跳过后缀名为 .vbs 的文件。对于需要重命名的文件,如果遇到重名,脚本会自动在文件名后添加数字(例如 `(1)`, `(2)` 等),仅在当前目录内处理重名。( X( \/ a5 ?/ m2 Y(欢迎访问老王论坛:laowang.vip)
' 6. 完成后,脚本会弹出消息框提示操作已成功完成。
- v, H, _2 ^1 t$ F" l
8 S7 f+ \! a- V3 P. POption Explicit
" ]* J0 E2 s+ ~0 s; h+ o! H( R7 l3 i; Z! f- P(欢迎访问老王论坛:laowang.vip)
' 获取当前目录的路径
5 t1 I$ D  ~! I+ x" M$ TDim folderPath
& O8 |- _& Q9 IfolderPath = CreateObject("Scripting.FileSystemObject").GetAbsolutePathName(".")2 {" s# r0 g  S(欢迎访问老王论坛:laowang.vip)
! {+ ^  U9 e8 ]& t9 T/ c8 g! X(欢迎访问老王论坛:laowang.vip)
' 获取用户输入的新文件后缀名(不包含点)
! I+ q' @. c) z: @) _Dim newExtension
" E1 Q. T; [- S8 k+ O  L0 CnewExtension = InputBox("请输入新的文件后缀名(不包含点),例如 'txt',将所有文件的后缀改为该值。", "设置新的文件后缀名")
* c& c' [7 {7 v/ p4 k! o' q  _0 F( k0 a- A: N/ s(欢迎访问老王论坛:laowang.vip)
' 如果用户取消了输入框,则退出脚本" a) x3 g. f0 Z& T3 w(欢迎访问老王论坛:laowang.vip)
If newExtension = "" Then% h4 s6 k# Y. D4 X2 g* O( [(欢迎访问老王论坛:laowang.vip)
    MsgBox "操作已取消。", vbInformation, "信息"
( I3 m) F- i: {    WScript.Quit$ S2 C" k0 b5 r2 W(欢迎访问老王论坛:laowang.vip)
End If
( C6 C. }  H! g, I5 M. N3 O$ |1 J- o$ s; N8 a8 `# b(欢迎访问老王论坛:laowang.vip)
' 确保新的后缀名不包含点(.)4 k: |: n/ g' @6 p' h3 G(欢迎访问老王论坛:laowang.vip)
If InStr(newExtension, ".") > 0 Then
9 m" f1 b' C4 U    MsgBox "请只输入后缀名,不要包含点(.)。", vbCritical, "错误"
% u3 R4 D1 Y. h4 w4 A    WScript.Quit
+ p$ z$ m2 S, s* k: E; C2 jEnd If
  _- r# x. u. f0 @' F3 o: r2 w5 h& x7 V6 A" t, e7 C(欢迎访问老王论坛:laowang.vip)
' 创建 FileSystemObject 对象
4 x& l) {  f9 I( K1 ?Dim fso, folder, subFolder1 O; |% F- x2 `# D  A, t( T; `$ h(欢迎访问老王论坛:laowang.vip)
Set fso = CreateObject("Scripting.FileSystemObject")
$ r; r; n9 [8 m# n% O! q' J! T# @: D8 X; Q: w9 ^/ ~% m(欢迎访问老王论坛:laowang.vip)
' 获取当前目录的 Folder 对象
" R: i3 j0 j) P! M! t8 uSet folder = fso.GetFolder(folderPath)
* S% r' p8 B8 r9 z1 o& Z6 m% B- W4 ?(欢迎访问老王论坛:laowang.vip)
' 检查当前目录是否包含子目录
: y* L+ o* j" p# o; p2 J+ U: pDim hasSubFolders* b' x0 z' l8 {+ H! c- c(欢迎访问老王论坛:laowang.vip)
hasSubFolders = folder.SubFolders.Count > 0% h& a4 f, J& J9 d  a* J(欢迎访问老王论坛:laowang.vip)
7 }, l3 {* J/ M(欢迎访问老王论坛:laowang.vip)
' 如果当前目录包含子目录,则提示用户是否也要处理子目录中的文件
# y' c, j  e4 J3 c/ [Dim modifySubFolders
: a  x/ W$ H& g& K  M9 P8 C3 RIf hasSubFolders Then7 F% }% \7 P& \# @(欢迎访问老王论坛:laowang.vip)
    modifySubFolders = MsgBox("当前目录包含子目录。是否也要修改子目录中的文件后缀名?", vbYesNo + vbQuestion, "修改子目录中的文件")
* z, M% j& L9 G2 g3 iEnd If
0 ]" u- e% V5 ?2 l3 X" n
0 @8 {% m7 B5 D9 x' 处理当前目录中的所有文件2 i$ e# H; [7 w(欢迎访问老王论坛:laowang.vip)
Call ProcessFiles(folder, newExtension)  K* h9 U' t( w7 j$ r(欢迎访问老王论坛:laowang.vip)
$ B; O  ^) M# C(欢迎访问老王论坛:laowang.vip)
' 如果用户选择是,并且当前目录包含子目录,则遍历所有子目录并处理其中的文件
) u9 l8 E! p# d7 J% FIf hasSubFolders And modifySubFolders = vbYes Then
3 y8 {+ K. N* S" R$ ?$ r    For Each subFolder In folder.SubFolders
2 N$ z, M( L. s+ @" o( _3 O        Call ProcessFiles(subFolder, newExtension)0 J) E$ W7 C9 v/ a  p4 G# l/ ~9 \4 N(欢迎访问老王论坛:laowang.vip)
    Next' H% ^* q& Q' Q6 {  d2 J  `. Y4 m(欢迎访问老王论坛:laowang.vip)
End If, ?5 A1 a6 A( W: ~(欢迎访问老王论坛:laowang.vip)
3 |3 K3 _5 w) O4 M2 z: v- H(欢迎访问老王论坛:laowang.vip)
' 提示用户操作完成
0 a( x' @  ^: Q+ y5 u5 ^MsgBox "所有文件的后缀名已成功更改为 '" & newExtension & "'。", vbInformation, "完成"
6 c  X& J; @7 \: L( m8 L$ M/ f) }" ?# Y(欢迎访问老王论坛:laowang.vip)
' 处理指定目录中的文件的子程序
7 @  H! Z) {8 H$ FSub ProcessFiles(targetFolder, newExtension)/ [$ ?" E0 s) {1 W0 V9 f(欢迎访问老王论坛:laowang.vip)
    Dim file, oldName, baseName, currentExtension, newName, newFileName, counter
0 B) P! m* f/ Z    Dim nameDict/ e% f5 n$ t% }7 _* z" T(欢迎访问老王论坛:laowang.vip)

8 O7 J" e- f6 A    ' 创建一个字典对象,用于存储当前目录内的文件名4 K* V$ k  K) N# n(欢迎访问老王论坛:laowang.vip)
    Set nameDict = CreateObject("Scripting.Dictionary")2 ~: b; G, D- D: Z3 w% V* N0 a(欢迎访问老王论坛:laowang.vip)

* x" L  b; o) l$ B    ' 遍历指定目录下的所有文件! b' |; X7 s) S9 ~/ R% ^(欢迎访问老王论坛:laowang.vip)
    For Each file In targetFolder.Files2 J3 a- H: G. S  r, E(欢迎访问老王论坛:laowang.vip)
        ' 跳过后缀名为 .vbs 的文件9 \( F% c- h+ ?( ^3 m$ K4 B(欢迎访问老王论坛:laowang.vip)
        If LCase(fso.GetExtensionName(file)) <> "vbs" Then
5 x! S, |( |4 w$ }' B            ' 获取文件的旧名称、基础名称和当前后缀名3 |: u: S( Q# U( [" {* ^(欢迎访问老王论坛:laowang.vip)
            oldName = file.Name
, J6 {6 X8 s4 @9 N            baseName = fso.GetBaseName(file)
. l% @+ d: l  \  Y# X, L$ F% M            currentExtension = LCase(fso.GetExtensionName(file))
+ F8 j, x7 M/ |
  q, x1 N6 `- q% {- D" U" |            ' 如果当前后缀名与新后缀名不同,则进行重命名# D2 [$ ]1 I/ L& ^7 C; Y(欢迎访问老王论坛:laowang.vip)
            If currentExtension <> LCase(newExtension) Then% a* N1 i! m, F5 _  }7 ]; a' J(欢迎访问老王论坛:laowang.vip)
                ' 创建新的文件名
5 A6 r; b+ F/ ?. {                newName = baseName & "." & newExtension' n+ X6 H  ]3 F* |9 X3 d# A(欢迎访问老王论坛:laowang.vip)

( d/ K& S0 x+ u5 U7 |2 m! \                ' 检查是否已有同名文件,如果有,则处理重名
( Y' ~; w1 U9 h                newFileName = newName0 ^( a& B" B' }( }7 x2 t* V3 |5 g: s(欢迎访问老王论坛:laowang.vip)
                counter = 1
: r$ W- I/ @% }! w                ' 确保新的文件名唯一
3 m) h7 X, I, B                While nameDict.Exists(newFileName) Or fso.FileExists(targetFolder.Path & "\" & newFileName)2 ~* i. s' n: G/ p3 M# B% h(欢迎访问老王论坛:laowang.vip)
                    newFileName = baseName & "(" & counter & ")." & newExtension
# b" P; Q7 e5 Y                    counter = counter + 1! q) R) ]/ K3 Z# i& Z" Y(欢迎访问老王论坛:laowang.vip)
                Wend) H" e0 E4 ^$ P(欢迎访问老王论坛:laowang.vip)
4 q6 M1 Q2 q! F9 Z(欢迎访问老王论坛:laowang.vip)
                ' 记录新的文件名, x' ~& T; v& b(欢迎访问老王论坛:laowang.vip)
                nameDict.Add newFileName, True+ d) m3 Z& A0 U5 k/ d(欢迎访问老王论坛:laowang.vip)
4 R0 [" H% _1 o6 D(欢迎访问老王论坛:laowang.vip)
                ' 重命名文件7 ~" W' M4 d, v2 b: v% C) ?& J(欢迎访问老王论坛:laowang.vip)
                file.Name = newFileName
) \5 M' K' A2 C            End If
! A/ B* P( e- X6 U! t6 a        End If
4 C$ w( Y# P' d9 n1 q    Next
& q4 U( v* O5 `# zEnd Sub
2 t8 {7 d. G* x  [- P& ?1 V# ]  s0 a( t; s9 _# ], l2 D(欢迎访问老王论坛:laowang.vip)
6 [+ F/ Q& j5 ?& P- x(欢迎访问老王论坛:laowang.vip)
  U; J# y) \* T( a; f(欢迎访问老王论坛:laowang.vip)
回复

使用道具 举报

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

使用道具 举报

发表于 2024-9-6 12:41:25 | 显示全部楼层
微软store里面装个微软官方的powertoys里面什么工具都有,哪里需要这么麻烦哦5 L7 `2 z7 X! w% p(欢迎访问老王论坛:laowang.vip)
回复 支持 反对

使用道具 举报

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

本版积分规则

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

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