【发布时间】:2019-04-11 20:28:03
【问题描述】:
这是与this one 非常相似的问题,但针对的是 Python 而不是 powershell。还讨论了here 和here,但没有发布任何可行的解决方案。
那么,有没有办法在 Python 中创建一个绕过 Windows 上 260 字符限制的目录?我尝试了多种方式添加\\?\,但都无法使用。
特别是下面最明显的代码
path = f'\\\\?\\C:\\{"a"*300}.txt'
open(path, 'w')
因错误而失败
OSError: [Errno 22] Invalid argument: '\\\\?\\C:\\aaaaa<...>aaaa.txt'
【问题讨论】:
-
Windows 路径最多可包含 32767 个字符,受限于 NT 的
UNICODE_STRING计数字符串类型,为最终解析的路径提供或取一些字符(例如“C:”->“\Device \HarddiskVolume2")。但是文件名和目录名的长度受文件系统的限制。几乎所有受支持的文件系统都将其限制为 255 个字符。见File System Functionality Comparison。
标签: python-3.x windows filesystems