【Java】利用自带的file.mkdirs()创建文件夹与file.mkdirs()的注意事项
利用Java的自带命令file.mkdirs();是可以直接在系统创建文件夹的。
比如在d:\1文件夹下创建一个2的文件夹,则这样写:
- import java.io.*;
- public class FileMkdirTest {
- public static void main(String[] args) {
- File file = new File("d:\\1\\2");
- //如果d:\1\2这个文件夹不存在,才创建
- if (!file.exists()) {
- file.mkdirs();
- }
- }
- }
Java把文件夹也视作一个file,
但值得注意的是,在文件夹或文件名中不得含有:两个方向的斜杠\/、冒号:、星号*、问号?、引号"、左右尖括号<>、竖杠|,你要使用这个符号作为文件夹或文件名称,最好把他们转化成全角\/:*?"<>|,可以利用到如下的JAVA函数转化:
- public static String fileEncode(String str) {
- if (str != null) {
- //这里是专为文件写的转义方法,涉及文件操作
- return str
- .replaceAll("\\\\", "\")
- .replaceAll("/", "/")
- .replaceAll(":", ":")
- .replaceAll("[*]", "*")
- .replaceAll("[?]", "?")
- .replaceAll("\"", "”")
- .replaceAll(":", ":")
- .replaceAll("<", "<")
- .replaceAll(">", ">")
- .replaceAll("[|]", "|");
- } else {
- //防止空,搞成空格
- return " ";
- }
- }
比如如下的程序:
- public class FileMkdirTest {
- public static void main(String[] args) {
- File file = new File("d:\\1\\|");
- if (!file.exists()) {
- file.mkdirs();
- }
- }
- }