请问Java中的这个异常咋处理
小白最近开始学Java,对着教材敲的代码,不知道出现的这个异常咋修改?https://sm.ms/image/192sSGWdBICgvJj
import java.io.File;
import java.io.IOException;
public class test001 {
public static void main(String[] args) throws IOException {
//磁盘下创建文件
File file=new File("D:\\hello\\demo.txt");
if(file.exists()){ //如果存在这个文件就删除,否则就创建
file.delete();
}else{
System.out.println(file.createNewFile());
}
//在磁盘下创建一层目录,并且在目录下创建文件文件
File fileDemo=new File("D:\\hello1\\demo.txt");
if(!(fileDemo.getParentFile().exists())){//判断d:\demo目录是否存在
fileDemo.getParentFile().mkdir();
}
if(fileDemo.exists()){ //如果存在这个文件就删除,否则就创建
fileDemo.delete();
}else{
System.out.println(fileDemo.createNewFile());
}
}
} 把 目录的 \\ 改成 //
public static void main(String[] args) throws IOException {
//磁盘下创建文件
File file=new File("D://demo.txt");
if(file.exists()){ //如果存在这个文件就删除,否则就创建
file.delete();
}else{
System.out.println(file.createNewFile());
}
//在磁盘下创建一层目录,并且在目录下创建文件文件
File fileDemo=new File("D://demo.txt");
if(!(fileDemo.getParentFile().exists())){//判断d:\demo目录是否存在
fileDemo.getParentFile().mkdir();
}
if(fileDemo.exists()){ //如果存在这个文件就删除,否则就创建
fileDemo.delete();
}else{
System.out.println(fileDemo.createNewFile());
}
} 22 行改成
fileDemo.getParentFile().mkdir(); yongqiangipone 发表于 2021-11-22 15:34
把 目录的 \\ 改成 //
public static void main(String[] args) throws IOException {
//磁盘下 ...
谢谢大佬 本帖最后由 ygiveupc 于 2021-11-22 15:45 编辑
file.createNewFile()创建的是文件,但是你D盘下没有hello文件夹,所以会报错
文件的间隔符建议使用 File.separator ,例如: "D:"+ File.separator+"hello"+ File.separator +"demo.txt" 。
这样的话在任意系统都不会出错 12行改成
System.out.println(file.mkdirs()); Yxlhsx 发表于 2021-11-22 16:12
12行改成
谢谢,您说的对
页:
[1]