我正在尝试生成格式为A_B_23 / 05 / 2019.zip的文件名,但是,它正在为dd / MM / yyyy中的每个/创建一个子文件夹。
StringBuilder sb = null;
DateFormat dateFormat = new SimpleDateFormat("dd/MM/yyyy");
sb = new StringBuilder("A"+ UNDERSCORE);
sb.append("B");
sb.append(UNDERSCORE);
sb.append(dateFormat.format(new Date()));
如何在不创建子文件夹05的情况下生成A_B_23 / 05 / 2019.zip?
答案 0 :(得分:2)
不幸的是,在Windows或类Unix系统中,不能在文件名中使用斜杠,因为它们代表文件路径。看到这里:https://docs.microsoft.com/en-us/windows/desktop/FileIO/naming-a-file
使用当前代码页中的任何字符作为名称,包括Unicode字符和扩展字符集(128–255)中的字符,但以下各项除外:
以下保留字符:
<(小于)
>(大于)
:(冒号)
“(双引号)
/(正斜杠)
\(反斜杠)
| (垂直杆或管)
? (问号)
*(星号)
答案 1 :(得分:0)
文件名中不能包含“ /”字符。您应该选择一种“更好”(即允许)的方式来编码文件名。如@DVK所述,“-”可能是更好的选择(并且符合ISO日期格式!)。