gpt4 book ai didi

c - 文件路径长度有多重要?

转载 作者:太空宇宙 更新时间:2023-11-04 04:56:28 25 4
gpt4 key购买 nike

我正在开发跨平台库,该库将用于在光学媒体上进行文件操作(创建、重命名、删除...)。所以我有与路径处理相关的问题。

  1. 目前我的库中的路径长度没有限制,因此用户可以创建操作系统不支持的具有很长路径的文件夹。例如,在 Windows 中,用户可以创建路径长度大于 MAX_PATH 个字符的文件夹。那么在这种情况下我必须做什么?

  2. 第一个问题的解决方案,可能会检查将在文件/文件夹复制后创建的新路径 len。但是还有一个问题,是windows和linux下MAX_PATH和PATH_MAX的取值不同造成的。

最佳答案

C 定义了一个标准宏 FILENAME_MAX

“这个宏常量展开成一个整数表达式对应需要的大小一个 char 元素的数组,用于保存最长的文件名字符串系统。或者,如果系统没有施加这样的限制,它被设置为推荐的用于保存任何文件名的字符数组的大小。”

这应该足够大以指定一个字符串,该字符串包含可用于文件名的最长名称。它是一个宏,所以它的值是平台相关的。

大多数 OS API 应该返回一个特定的错误,表明该名称被过度处理,您可以适本地处理它并向用户报告。

关于c - 文件路径长度有多重要?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7118955/

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