java Windows无法删除具有大路径的文件
Google Web Toolkit (GWT)在temp(C:\Users\User01\AppData\Local\Temp)
目录中生成大量临时文件
文件路径的示例:
C:\Users\User01\AppData\Local\Temp\gwt-codeserver-1101830889369654349.tmp\com.company01.web.builder.BuildingsWeb\compile-2\gen\com\company01\web\theme\custom_pluto123\client\base\progressbar\Css3ProgressBarAppearance_Css3ProgressBarTemplate_render_SafeHtml__SafeHtml_text__Css3ProgressBarStyles_style__SafeStyles_wrapStyles__SafeStyles_progressBarStyles__SafeStyles_progressTextStyles__SafeStyles_widthStyles___SafeHtmlTemplatesImpl.java
上面的文件路径包含437个字符
当我试图从Windows资源管理器中删除此类文件时,它崩溃了。我还尝试从命令提示符中删除或重命名它,它显示The filename or extension is too long.
最后我通过运行自定义java程序删除了
现在,我的问题是为什么Windows无法删除它?如果操作系统不支持它,java如何删除它
注:
# 1 楼答案
Windows限制为260个字符(=最大路径),但现在还允许通过Unicode版本的API创建最多32767个字符的路径
很遗憾,Windows资源管理器无法处理长路径
Java似乎使用Unicode API,因此可以创建和删除长路径
资源: