gpt4 book ai didi

Ruby 的目录 vs 文件 vs 路径名?

转载 作者:数据小太阳 更新时间:2023-10-29 06:36:43 32 4
gpt4 key购买 nike

Ruby 的 Dir、File 和 Pathname 类之间有什么区别?它们似乎共享通用方法,如 basenamedirnameglobjoin。什么时候使用一种比另一种更有优势?

在将其功能与 Dir 和 File 进行比较时,Pathname 显得特别特殊。

最佳答案

根据 Dir 的 Ruby 文档, File , 和 Pathname , 他们显然有很多共同点。

DirFile 之间的原理不同似乎是 Dir 假设它正在处理的对象是一个目录,而 File 假定文件。对于大多数用途,它们显然可以互换使用,但即使代码有效,如果您使用 File 操作目录和使用 Dir 操作文件,阅读您的代码的任何人都可能会感到困惑.

Pathname 看起来是一种定位文件和目录的多操作系统方法。由于 Windows 和 *nix 机器处理文件管理的方式不同,如果您希望脚本在任何地方运行,以特定于操作系统的方式引用文件或目录可能会很痛苦。来自文档:

Pathname represents a pathname which locates a file in a filesystem. The pathname depends on OS: Unix, Windows, etc. Pathname library works with pathnames of local OS. However non-Unix pathnames are supported experimentally.

It does not represent the file itself. A Pathname can be relative or absolute. It’s not until you try to reference the file that it even matters whether the file exists or not.

Pathname is immutable. It has no method for destructive update.

希望这对您有所帮助。

关于Ruby 的目录 vs 文件 vs 路径名?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12040116/

32 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com