目录中文件的长路径()?我在尝试访问某些文件时遇到了以下问题:
由于某些目录结构,所需目录的路径长度可能超过 134 个字符。如果路径长度不超过 134 个字符,file in directory() 可以顺利列出目录中的文件;但如果路径长度超过 134 个字符(父目录相同),则列表为空。我已经检查了权限,一切正常。如果我在 JMP 中使用“文件”->“打开”,仍然无法在目录中找到这些文件。是缓冲区问题还是其他原因?
自动化和脚本回复:Directory() 中文件的长路径?文件被隐藏了吗?这种情况只发生在特定文件夹中吗?您使用的是什么操作系统?您使用的 JMP 是哪个版本?您的文件名有多长?您确定文件格式设置正确吗?

回复:Directory() 中文件的长路径?好的,当我尝试在 JMP 中使用“打开”按钮查找文件时,我忘记将下拉菜单设置为“所有文件”。但使用脚本仍然找不到。我使用的是 Windows 系统,这种情况只发生在路径长度超过 134 个字符的文件夹中。因此,如果在同一目录中,但文件夹名称较短,即完整路径长度少于 134 个字符,则可以使用。我使用的是 18pro 版本。“文件格式设置正确”是什么意思?
回复:Directory() 中文件的长路径?下拉菜单指的是文件格式,正如您所说的,JMP 的“打开”无法显示文件。您是否尝试过使用不同的参数,例如“Files In Directory”和“Files In Directory(path, ) ,还有一个用于隐藏文件(至少根据脚本索引)。
回复:Directory() 中文件的长路径?是的,我已经尝试了所有选项,但没有成功。我猜这只是一个 JMP 限制
回复:Directory() 中文件的长路径?您可以联系JMP 支持。我在使用“目录中的文件”时没有遇到过这样的问题。
查看更多...
Names Default To Here(1);
path = "$DOWNLOADS\New folder\New folder (4)\New folder (4)\New folder (4)\New folder (4)\New folder (4)\New folder (4)\New folder (4)\New folder (4)\New folder (4)\New folder (4)\New folder (4)\New folder (4)\New folder (4)\New folder (4)\";
Show(Length(path), Files In Directory(path));
回复:Directory() 中文件的长路径?疯狂的:D是的,我已经联系过他们了,他们说我可以直接将目录复制到路径较短的地方,然后将其删除
回复:Directory() 中文件的长路径?很抱歉您遇到了这个问题。请问您使用的 JMP 是哪个版本?
Windows 路径的完整路径长度历史限制为 260 个字符。这可能是由于我们使用的操作系统 API 截断了某些内容,唯一的解决方法是按照建议缩短整体路径长度。或者,“目录中的文件”可能存在错误。
您知道问题文件夹的完整父路径的长度吗?如果该长度(包括驱动器和 \ 字符)+ 您正在枚举的目录的 134 个字符超过 260 个字符,则名称将被操作系统截断。
您可能想知道:我们确实有一个愿望清单,希望将来能够支持长文件名,但这相当复杂,因为长路径的结构与普通路径不同。例如,它们的前缀是 \\?\。此外,处理文件的代码有很多,需要重写。支持长文件名还需要您编辑注册表以在计算机上启用它。
回复:Directory() 中文件的长路径?我以前也遇到过类似的问题(使用其他软件),我通过将长文件路径映射到带字母的驱动器(例如 X:)然后使用该较短的路径来解决该问题。
回复:Directory() 中文件的长路径?谢谢您的回复,我知道 JMP 无法轻易解决这个问题,所以对您没有意见。如果有帮助的话,我正在使用 JMP 18pro。正如我所说,目前的方法是将文件夹复制到路径很短的其他位置,然后执行我需要的操作,最后将其删除。无效的父路径长度为 134 个字符,但这不包括文件夹位于“用户->网络->驱动器”这一部分,因为路径中没有显示这部分。