这是设计使然吗?
这是代码:
class FileRenamer
def RenameFiles(folder_path)
files = Dir.glob(folder_path + "/*")
end
end
puts "Renaming files..."
renamer = FileRenamer.new()
files = renamer.RenameFiles("/home/papuccino1/Desktop/Test")
puts files
puts "Renaming complete."
获取文件的顺序似乎是随机的,而不是像 Nautilus 中显示的那样。
这是设计使然吗?我只是好奇。
在特定操作系统上,每次的顺序都应该相同,但是is不同操作系统有所不同。
不能相信 Dir.glob 的行为在不同操作系统中是相同的。不确定这是否是设计使然,而是文件系统的产物。
在 Windows 和 Linux 上,结果按层次结构排序,然后按字母顺序排序;在 Mac OS X 上,结果按字母顺序排序。
您可以通过对结果调用排序来减轻影响,例如:
files = Dir.glob("./*").sort
或者如果您希望不区分大小写,也许:
files = Dir.glob("./*").sort {|a,b| a.upcase <=> b.upcase}
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)