|
楼主 |
发表于 2023-8-5 21:00:25
|
显示全部楼层
重庆市重庆市
.版本 2
.子程序 __启动窗口_创建完毕
.局部变量 文件号, 整数型
.局部变量 目录数组, 文本型, , "0"
.局部变量 文件数组, 字节集, , "0"
.局部变量 循环变量, 整数型
.局部变量 原目录, 文本型
.局部变量 新目录, 文本型
.局部变量 新目录名, 文本型
.局部变量 新文件名, 文本型
.局部变量 开始时间, 日期时间型
.局部变量 校正数量, 整数型
开始时间 = 取现行时间 ()
原目录 = “D:\Steam\steamapps\common\Mount & Blade II Bannerlord”
新目录 = “d:\骑砍2”
文件号 = 打开文件 (“c:\mulu.txt”, 4, 1)
目录_枚举子目录1 (原目录, 目录数组, 真, 真)
.如果真 (目录_是否存在 (新目录) = 假)
创建目录 (新目录)
.如果真结束
.计次循环首 (取数组成员数 (目录数组), 循环变量)
新目录名 = 文本_替换 (目录数组 [循环变量], 1, , , 原目录, 新目录)
.如果真 (目录_是否存在 (新目录名) = 假)
创建目录 (新目录名)
.如果真结束
.计次循环尾 ()
文件_枚举W (编码_Ansi到Unicode (原目录), 编码_Ansi到Unicode (“*”), 文件数组, 真, 真, 假)
.计次循环首 (取数组成员数 (文件数组), 循环变量)
写文本行 (文件号, 编码_Unicode到Ansi (文件数组 [循环变量]))
新文件名 = 文本_替换 (编码_Unicode到Ansi (文件数组 [循环变量]), 1, , , 原目录, 新目录)
.判断开始 (文件是否存在 (新文件名) = 假)
.如果真 (复制文件 (编码_Unicode到Ansi (文件数组 [循环变量]), 新文件名) = 假)
编辑框.内容 = 编辑框.内容 + “复制失败:” + 编码_Unicode到Ansi (文件数组 [循环变量])
.如果真结束
校正数量 = 校正数量 + 1
.判断 (校验_取md5_进度 (新文件名, ) ≠ 校验_取md5_进度 (编码_Unicode到Ansi (文件数组 [循环变量]), ))
.如果真 (复制文件 (编码_Unicode到Ansi (文件数组 [循环变量]), 新文件名) = 假)
编辑框.内容 = 编辑框.内容 + “复制失败:” + 到文本 (文件数组 [循环变量]) + #换行符
.如果真结束
校正数量 = 校正数量 + 1
.默认
.判断结束
.计次循环尾 ()
关闭文件 (文件号)
_启动窗口.标题 = “用时:” + 到文本 (取时间间隔 (取现行时间 (), 开始时间, 8)) + “秒 同步文件:” + 到文本 (校正数量) + “个”
我这样用的这个命令,还是不能正确识别特殊字符的文件 |
|