首页 > 解决方案 > 如何摆脱 - “java.io.IOException:系统找不到指定的路径”

问题描述

我正在尝试创建一个文件并写入它,但我的路径出现错误。这是我的代码:

@Value("${base.location}")
private String folderName;

if (StringUtils.isBlank(dateFileName)) {
            setdateFileName(new StringBuilder().append("MY_FILE")
                    .append(".txt").toString());
         
        }
        dateFile = new File(
                new StringBuilder().append(folderName).append(File.separator).append(dateFileName).toString());

        if (!dateFile.exists()) {
            try {
                dateFile.mkdir();
                dateFile.createNewFile(); //error
              
            }

标签: javafileio

解决方案


您不能在同一路径位置拥有同名的文件夹和文件。

这就是此代码失败的原因:

dateFile.mkdir();
dateFile.createNewFile();

在这里,您首先创建一个文件夹,然后尝试创建一个具有相同路径名的文件。您需要为文件选择不同的名称。

我猜你可能打算这样做:

dateFile.getParentFile().mkdirs();
dateFile.createNewFile();

即创建文件的父文件夹(根据需要包括其所有父文件夹),然后在其中创建文件。


推荐阅读