生成格式为A_B_23 / 05/2019的文件名正在创建子文件夹

时间:2019-05-23 17:25:18

标签: java

我正在尝试生成格式为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?

2 个答案:

答案 0 :(得分:2)

不幸的是,在Windows或类Unix系统中,不能在文件名中使用斜杠,因为它们代表文件路径。看到这里:https://docs.microsoft.com/en-us/windows/desktop/FileIO/naming-a-file

  

使用当前代码页中的任何字符作为名称,包括Unicode字符和扩展字符集(128–255)中的字符,但以下各项除外:

     

以下保留字符:

     

<(小于)
   >(大于)
   :(冒号)
  “(双引号)
  /(正斜杠)
  \(反斜杠)
  | (垂直杆或管)
  ? (问号)
  *(星号)

答案 1 :(得分:0)

文件名中不能包含“ /”字符。您应该选择一种“更好”(即允许)的方式来编码文件名。如@DVK所述,“-”可能是更好的选择(并且符合ISO日期格式!)。

相关问题