标准(或免费)的POSIX路径操作C库

8

是否有适用于C语言的标准(或广泛使用的)简单的POSIX路径操作库(路径合并、文件名剥离等)?

实际上,由于我主要在Windows下工作,所以我目前使用 'shlwapi' 路径函数。

是否有类似的一套函数可用于 POSIX 路径?


2
一时之间:由于多个“/”不会造成任何影响,并且在POSIX系统中不存在“扩展名”的概念,因此许多这些方法并不重要...通常可以通过字符串操作和realpathglob来解决。虽然这不是你所问的答案... :-) - BRPocock
3
@BRPocock表示,多个/并不总是安全的。例如,在kpathsea中,/foo//会展开为/foo下的所有子目录(如果你将路径传递给内部使用kpathsea的东西(如LaTeX),这可能非常难以跟踪)。 - Timothy Jones
@timothy Jones...确实如此,尽管在我的世界中相对罕见...但realpath可以纠正这一点,以及符号链接...以其自己的方式,glob也可以。 - BRPocock
1个回答

11
  • 路径合并 - snprintf()
  • 文件名剥离 - dirname()
  • 等等 - basename(), realpath(), readlink(), glob(), fnmatch()...

谢谢,这正是我想要的那种函数。你知道有没有在线列表,类似于我链接的 MSDN 页面的等价物? - rotoglup
只是问一下,我已经尝试在谷歌上搜索了,但是没有找到任何综合信息;由于这些函数也存在于PHP、Ruby等语言中,噪声/信号比率相当高。无论如何... - rotoglup
谢谢提供链接,看起来一些函数如'basename()'在这个手册的“在字符串中查找标记”部分中... - rotoglup
@rotoglup,“man snprintf”应该包含你所需的所有信息。 :) - WhyNotHugo

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接