它比OS本身更多地限制了使用的文件系统。
您只能通过将驱动器格式化为支持更长的文件名的不同文件系统来更改此操作。
为什么您需要一个长达几英里的文件名是我的范围之外。但是我唯一能提供的建议是尝试缩短文件名。您更新了问题。这是正确的答案。 :)
尤其,您的方法是正确的。尽管您的邮政编码包含更长的文件名,则可以将其截断。 (以第一个250为例,忽略其余的。现在,您可能有重复的文件名。最后添加一个数字,因为您剩下5个字符)。另一个选项是要求用户输入新的文件名。 只要您知道如何结构化。 我不知道Java内置API允许编辑ZIP文件。尽管前一段时间,我遇到了此库名称Dotnetzip for Microsoft.net,该名称允许所有典型功能,并在zip文件,加密,密码.etc中编辑条目。 (顺便说一句)
为Java的类似库外观。
但这听起来好像是要从中读取的现有文件的名称;在这种情况下,如果系统(文件或运行;无论哪种方式,您无法控制的东西)说它不是有效的文件名,那么您如何期望从中读取?