以下只是我自己理论上试一下, 并不是给楼主用
之前就想到用 Dir获取整个BGM文件夹 和File来获取大小, 修改文件的时间
原理是先遍历整个BGM文件夹, 然后用数组记下名字,大小和修改时间 , 然后储存至ttb.txt 文件(可以改名字比如222.txt)
生成了后, 目录就会出现ttb.txt
打开可以发现就储存了名字,大小,和修改时间
然后你去BGM文件内的任何文件, 修改名字或大小之类的,开启游戏就会检测到不一样
#__END__ #这个脚本是生成要检测的ttb.txt文件夹,只运行一次生成在目录 $储存大小时间的数组 = [] Dir.foreach("./Audio/BGM") do |entry| if entry !="." and entry !=".." #因为头两个文件夹是.和.. 用于返回上一页, 所以无视 #f = File.open("./Audio/BGM/"+"#{entry}") #获取名字并加入数组 $储存大小时间的数组.push(entry) #获取文件修改之时间并加入数组 $储存大小时间的数组.push(File.size?( "./Audio/BGM/"+"#{entry}" )) #获取大小并加入数组 $储存大小时间的数组.push(File::mtime( "./Audio/BGM/"+"#{entry}" )) else #p entry end #if end #do $储存进文件夹的数组 = $储存大小时间的数组 file = File.open("ttb.txt", "wb") Marshal.dump($储存进文件夹的数组, file) file.close
#__END__
#这个脚本是生成要检测的ttb.txt文件夹,只运行一次生成在目录
$储存大小时间的数组 = []
Dir.foreach("./Audio/BGM") do |entry|
if entry !="." and entry !=".." #因为头两个文件夹是.和.. 用于返回上一页, 所以无视
#f = File.open("./Audio/BGM/"+"#{entry}")
#获取名字并加入数组
$储存大小时间的数组.push(entry)
#获取文件修改之时间并加入数组
$储存大小时间的数组.push(File.size?( "./Audio/BGM/"+"#{entry}" ))
#获取大小并加入数组
$储存大小时间的数组.push(File::mtime( "./Audio/BGM/"+"#{entry}" ))
else
#p entry
end #if
end #do
$储存进文件夹的数组 = $储存大小时间的数组
file = File.open("ttb.txt", "wb")
Marshal.dump($储存进文件夹的数组, file)
file.close
檢測BGM文件夾大小.zip
(204.16 KB, 下载次数: 70)
|