zl程序教程

您现在的位置是:首页 >  后端

当前栏目

Java学习笔记之报错Exception in thread “main“ java.io.FileNotFoundException

JAVA笔记学习IO 报错 in thread Exception
2023-09-27 14:23:26 时间

0x00 概述

在Java IO流章节进行练习的时候,运行代码时候发现报错,说文件路径不正确。

 

0x01 解决

报错代码

package FileDemo2;

import java.io.File;
import java.io.IOException;

public class FileDemo2 {
    public static void main(String[] args) throws IOException {
        // 需求1:在C:\Users\119k\IdeaProjects\d17\FileDemo2\目录下创建一个文件java.txt
        File f1 = new File("C:\\Users\\119k\\IdeaProjects\\d17\\FileDemo2\\java.txt");
        System.out.println(f1.createNewFile());
        System.out.println("--------------");


        // 需求2:在C:\Users\119k\IdeaProjects\d17\FileDemo2\目录下创建一个目录
        File f2 = new File("C:\\Users\\119k\\IdeaProjects\\d17\\FileDemo2\\JavaSE\\");
        System.out.println(f2.mkdir());
        System.out.println("--------------");

        // 需求3:在C:\Users\119k\IdeaProjects\d17\FileDemo2\目录下创建多级目录\JavaSE\JavaEE\
        File f3 = new File("C:\\Users\\119k\\IdeaProjects\\d17\\FileDemo2\\JavaSE\\JavaEE\\");
        System.out.println(f3.mkdirs());
        System.out.println("--------------");

        // 需求4:在C:\Users\119k\IdeaProjects\d17\FileDemo2\目录下创建一个文件javaSE.txt
        File f4 = new File("C:\\Users\\119k\\IdeaProjects\\d17\\FileDemo2\\javaSE.txt");
        System.out.println(f4.createNewFile());
        System.out.println("--------------");
    }
}

修正后的代码,注意红色部分,增加了\src

package FileDemo2;

import java.io.File;
import java.io.IOException;

public class FileDemo2 {
    public static void main(String[] args) throws IOException {
        // 需求1:在C:\Users\119k\IdeaProjects\d17\FileDemo2\目录下创建一个文件java.txt
        File f1 = new File("C:\\Users\\119k\\IdeaProjects\\d17\\src\\FileDemo2\\java.txt");
        System.out.println(f1.createNewFile());
        System.out.println("--------------");


        // 需求2:在C:\Users\119k\IdeaProjects\d17\FileDemo2\目录下创建一个目录
        File f2 = new File("C:\\Users\\119k\\IdeaProjects\\d17\\src\\FileDemo2\\JavaSE\\");
        System.out.println(f2.mkdir());
        System.out.println("--------------");

        // 需求3:在C:\Users\119k\IdeaProjects\d17\FileDemo2\目录下创建多级目录\JavaSE\JavaEE\
        File f3 = new File("C:\\Users\\119k\\IdeaProjects\\d17\\src\\FileDemo2\\JavaSE\\JavaEE\\");
        System.out.println(f3.mkdirs());
        System.out.println("--------------");

        // 需求4:在C:\Users\119k\IdeaProjects\d17\FileDemo2\目录下创建一个文件javaSE.txt
        File f4 = new File("C:\\Users\\119k\\IdeaProjects\\d17\\src\\FileDemo2\\javaSE.txt");
        System.out.println(f4.createNewFile());
        System.out.println("--------------");
    }
}

需要在IDE内获取文件的绝对路径,此处使用copy-absoulte path 发现文件路径内是多出了 \\src