【问题标题】:Standard (or free) POSIX path manipulation C library标准(或免费)POSIX 路径操作 C 库
【发布时间】:2012-01-17 20:05:26
【问题描述】:

是否有任何用于 C 的标准(或广泛使用的)简单 POSIX 路径操作库(路径连接、文件名剥离等)?

其实因为我主要是在Windows下工作,所以我目前使用'shlwapi'路径函数。

是否有任何等效的函数集可用于 POSIX 路径?

【问题讨论】:

  • 副手:由于多个/ 不会造成任何伤害,并且在 POSIX 系统中没有“扩展”之类的东西,所以很多这些方法并不重要……你通常可以得到通过字符串操作和realpathglob。不过,从技术上讲,这不是您所问问题的答案…… :-)
  • @BRPocock: 多个/es 并不总是安全的——例如在kpathsea 中,/foo// 会扩展到/foo 下的所有子目录(如果它很难追踪,如果您正在传递一条路径到内部使用 kpathsea 的东西 - 例如乳胶)。
  • @timothy Jones ... 是的,虽然在我的世界里比较少见...但 realpath 确实纠正了这一点,以及符号链接...就像 glob 一样。

标签: c path-manipulation


【解决方案1】:
  • 路径连接 - snprintf()
  • 文件名剥离 - dirname()
  • 等。 - basename()、realpath()、readlink()、glob()、fnmatch()...

【讨论】:

  • 谢谢,这是我想到的那种功能。您是否碰巧知道其中的在线列表,例如我链接的 msdn 页面的等效项?
  • 只是问,我已经尝试谷歌这个,但没有找到任何综合信息;噪声/信号比相当高,因为这些函数也存在于 PHP、Ruby 等中。无论如何......
  • 感谢您的链接,本手册中的“在字符串中查找令牌”部分中似乎有一些函数,例如“basename()”...
  • @rotoglup "man snprintf" 应该有你需要的所有信息。 :)
猜你喜欢
  • 2011-01-21
  • 1970-01-01
  • 2013-02-22
  • 2010-09-08
  • 2016-08-04
  • 1970-01-01
  • 2012-12-05
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多