问答文章1 问答文章501 问答文章1001 问答文章1501 问答文章2001 问答文章2501 问答文章3001 问答文章3501 问答文章4001 问答文章4501 问答文章5001 问答文章5501 问答文章6001 问答文章6501 问答文章7001 问答文章7501 问答文章8001 问答文章8501 问答文章9001 问答文章9501

java.io.FileNotFoundException: (系统找不到指定的路径。)怎么处理

发布网友 发布时间:2022-04-26 17:56

我来回答

15个回答

热心网友 时间:2023-01-23 18:48

1、造成java.io.FileNotFoundException异常的原因为:通过io流根据给定路径调用文件时,发现文件不存在。

2、解决办法为:将想要通过io流调用的文件放置到编写程序时给出的对应路径下;或者找到文件,在编写程序时修改io流路径为文件的实际路径。

拓展:

1、Java是一种可以撰写跨平台应用软件的面向对象的程序设计语言。Java 技术具有卓越的通用性、高效性、平台移植性和安全性,广泛应用于PC、数据中心、游戏控制台、科学超级计算机、移动电话和互联网,同时拥有全球最大的开发者专业社群。

2、Java是由Sun Microsystems公司推出的Java面向对象程序设计语言(以下简称Java语言)和Java平台的总称。由James Gosling和同事们共同研发,并在1995年正式推出。Java最初被称为Oak,是1991年为消费类电子产品的嵌入式芯片而设计的。1995年更名为Java,并重新设计用于开发Internet应用程序。用Java实现的HotJava浏览器(支持Java applet)显示了Java的魅力:跨平台、动态Web、Internet计算。

热心网友 时间:2023-01-23 20:06

Java.io.FileNotFoundException是Java错误中比较常见的一种。该错误是一种IO Exception,或者输入/出错误,其出现原因主要是未在指定文件夹内找到所需的文件。

一般导致该错误出现的原因有以下三个:

1、目标文件不存在

解决方式:将所需文件移动到指定路径中。如果未设置路径,默认为java项目路径

2、你指定的目标不是文件,而是一个文件路径

解决方式:记得在路径后加入文件。如“%windir/System32/cmd.exe”

3、你指定的文件由于某种原因无法读取

解决方式:可以先使用方法file.canRead();进行验证。如果认证结果为false,试试将文件转换成可读的格式。如果为true,请检查第一和第二项

希望我的回答有所帮助。

热心网友 时间:2023-01-23 21:41

java.io.FileNotFoundException :当试图打开指定路径名表示的文件失败时,抛出此异常。不同的产生原因有不同的解决方案, 所以需要先分析异常产生的原因:  

异常产生的原因:

1、该文件不存在. 那么IO操作就会抛出该异常

2、如果该文件存在,但是由于某些原因不可访问,比如试图打开一个只读文件进行写入,则此时这些构造方法仍然会抛出该异常。

3、WIN10系统,直接向系统盘C盘的根目录,直接写入文件,那么也会抛出该异常.

处理异常的方案:

1、文件不存在时, 检查路径名填写错误,然后进行修改,或者创建出来. 

2、文件存在时, 我们需要检查该文件是否正在被修改占用, 或者该文件的属性是否是只读. 如果正在被修改占用,我们需要关闭其他占用该文档的应用.如果文件属性是只读,那么我们需要取消文档的只读属性

3、在WIN10系统,不要向系统盘C盘,直接创建文件, 需要先创建目录.然后写入文件

参考示范: 

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

public class FileTest {

public static void main(String[] args) {
//不同的操作系统,那么有不同的文件目录分隔符 ,所以建议不要直接写成"\\". 而应该使用File.separator 该字段 来获取
String sp = File.separator;//获取名称分隔符
File file = new File("d:" + sp + "book" + sp + "story.txt");

if (!file.getParentFile().exists()) {// 如果book文件夹不存在
file.getParentFile().mkdir();// 创建book文件夹
}

if (!file.exists()) {// 如果story.txt文件不存在
try {
file.createNewFile();// 创建story.txt
} catch (IOException e) { // 捕获异常并处理
e.printStackTrace();
}
}

}
}

拓展:  实际情况中,很多时候,文件夹存在,我们的重点是判断文件是否存在,且不存在,就创建. 有些输出流,就可以在文件不存在时,自动创建该文件. 比如FileOutputStream ,FileWriter ...

FileWriter fw = new FileWriter("d:\\菜单.txt");//注意 win10,不支持向c盘根目录写入文件
fw.close();

总结:  Java的异常处理机制是比较完善的, 除开通过推理逻辑, 避开一些异常, 更重要的是在运行中发生可以处理的异常时, 巧妙使用try catch 代码处理 .这样的程序才会更加的稳健

热心网友 时间:2023-01-23 23:32

可以上代码吗?

这个异常是Java常见的IO异常,这个异常导致的是文件路径找不到。

通常你可以使用try{}catch(FileNotFoundException e){……}来捕获异常。

可以找到具体的文件进行读取,而不是到文件夹。

也可以判断路径是否存在,如果不存在则mkdir.

最后给你个例子

 public static boolean createDir(String destDirName) {  
        File dir = new File(destDirName);  
        if (dir.exists()) {  
            System.out.println("创建目录" + destDirName + "失败,目标目录已经存在");  
            return false;  
        }  
        if (!destDirName.endsWith(File.separator)) {  
            destDirName = destDirName + File.separator;  
        }  
        //创建目录  
        if (dir.mkdirs()) {  
            System.out.println("创建目录" + destDirName + "成功!");  
            return true;  
        } else {  
            System.out.println("创建目录" + destDirName + "失败!");  
            return false;  
        }

热心网友 时间:2023-01-24 01:40

路径里面有中文哈
public class fileWrite {
public static void main(String[] args) {
File file = new File("D:/from.txt");
File file2 = new File("D:/to.txt");
BufferedReader reader = null;
BufferedWriter writer = null;
try {
System.out.println("以行为单位读取文件内容,一次读一整行:");
reader = new BufferedReader(new FileReader(file));
writer = new BufferedWriter(new FileWriter(file2));
String tempString = null;
int line = 1;
int notBlankLine = 0;
int blankLine = 0;
// 一次读入一行,直到读入null为文件结束
while ((tempString = reader.readLine()) != null) {
// 显示行号
System.out.println("line " + line + ": " + tempString);
line++;
if(StringUtils.isNotEmpty(tempString)){//空行不写
if(notBlankLine > 0) writer.newLine();
writer.write(tempString);
notBlankLine ++;
blankLine = 0;
}else{//换行符
if(blankLine == 0) writer.newLine();
blankLine++;
notBlankLine = 0;
}
}
reader.close();
writer.close();
} catch (IOException e) {
e.printStackTrace();
} finally {
if (reader != null) {
try {
reader.close();
} catch (IOException e1) {
}
}
if (writer != null) {
try {
writer.close();
} catch (IOException e1) {
}
}
}
}
}

热心网友 时间:2023-01-24 04:05

导致系统找不到文件的几种情况:

不同系统盘符问题:

如在windows系统写了个路径c:\test,服务器为linux系统,到服务器上保证报FileNotFound。因为linux系统没有盘符的概念

加载方式:

如本地使用的是jar包启动的项目(springboot就是jar包启动的项目),而上了服务器后用的是war包方式启的(就是用的tomcat).就有可能因为加载方式的不同导致本地是可以找到的,而到了服务器上却找不到.

3.文件名写错或放错。如文件路径为 c:\test\aa.text 错写为c:\text\aa.txt.

4.文件路径中含中文。c:\我的文件\aa.txt或c:\test\文本.txt

热心网友 时间:2023-01-24 06:46

造成java.io.FileNotFoundException异常的原因为:通过io流根据给定路径调用文件时,发现文件不存在。

解决办法为:将想要通过io流调用的文件放置到编写程序时给出的对应路径下;或者找到文件,在编写程序时修改io流路径为文件的实际路径

热心网友 时间:2023-01-24 09:44

去指定路径下看看是否存在文件
在程序处理之前做一次判断是否存在此文件或文件夹再进行下一步处理,就不会报错了

热心网友 时间:2023-01-24 12:59

你可以先把提示的路径copy出来如下图,查看能不能找到相应的文件

查看能不能找到相应的文件‍

热心网友 时间:2023-01-24 16:30

我之前遇到过找不到路径是因为有空格,因为它有个编码解码的过程,空格会编程其他字符。你可以找个没空格的路径这个方法最简单,或者编码就行。

热心网友 时间:2023-01-24 20:18

1、FileNotFoundException意味文件找不到,通常这种问题,可能是文件真的不存在指定路径,也可能是程序员在代码中指定路径时错误
2、建议:每次在使用文件流前,先对文件的存在与否做一个判断,当存在时才对文件做流操作,否则,做其他提示

热心网友 时间:2023-01-25 00:23

可能造成原因:

系统路径里含中文

路径误写

解决办法:

检查一下文档编码规则,最好采用UTF-8 无BOM格式

把路径换成全英文试试

重新检查一下路径

热心网友 时间:2023-01-25 04:44

首先这个路径是目录,看到你是想用读文件的方式读取目录,这是不可以的

File file = new File("c:/a.txt");
if (file.isDirectory()){ // 如果 file 是一个目录
    File[] files = file.listFiles(); // 取目录下所有文件
    for (File f : files)
        System.out.println(f.getName());
}

这是读取文件内容的例子:

网页链接

热心网友 时间:2023-01-25 09:22

对应的目录下面没有该文件:

检查路径是否正确

检查该文件是否存在

在调用该File是,先用exsit方法判断是否存在,并且使用try....catch捕获异常

热心网友 时间:2023-01-25 14:17

路径尽量不要有空格。

路径尽量不要有中文.

尽量不要放到C盘.

将路径在文件浏览器打开 win+E 输入地址查看是否可以打开

声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com
海关老师:你好. 如果是加工贸易手册报关的话,报关单价要与手册备案的... 上海危险品报关公司哪家好 长辈可以为老不尊出口成脏晚辈们却连句重话也不能对长辈说试问这样的长... 老一辈为什么这么喜欢拿态度说事? 系统集成项目管理工程师(一):信息化知识 "压哨"的英语怎么拼啊 周山打鱼的年薪多少钱 望穿秋水(打一动物)谜底及原因 想买一本词典 古代汉语字典买哪一种版本比较好? JAVA安装路径错误! 光遇跑图最佳路线 我的世界JAVA路径错误怎么办 灼热峡谷位于地图哪个方位,飞行点怎么去 苹果6splus怎么设置微信前录小视频? 魔兽世界 灼热峡谷的BL飞行点在哪 灼热峡谷怎么去,飞行点在哪 提示 启动失败,在创建新进程时发生错误,可能是Java路径错误,要怎么做? 苹果6s播放自己录的视频声音时大时小是什么原因? 光遇峡谷赛道一天有几次奖励? WOW 灼热峡谷的飞行点在哪 在线等 光遇平菇是哪个赛道 光遇后空翻是限时的吗? 霞谷鞠躬先祖位置 光遇霞谷飞行赛道先祖到终点消失了是什么情况? 苹果6s plus为什么不能录小视频? 苹果6splus怎么设置微信前录小视频 物联网使用于什么行业? 物联网的专业称呼是什么? 物联网是什么?触摸屏用物联网功能有什么好处? air race完美单圈什么意思 快玩里下的我的世界显示java路径错误怎么办 我的世界显示java路径不对怎么回事 紧急冻结后怎么解冻 为什么我玩我的世界提示java路径错误 我的是QQ号,现在冻结了,要我登录110网站,请问是不是我犯法了_百度问一问 我的世界为什么启动游戏总是说java路径出错 我的世界 我下好了Java,还是说路径错误,怎么改? 微信110 qq com我的被别人用QQ号冻结了。怎么弄开 我的被冻结了,要怎么解冻 被冻结了,而且在解冻的过程中提示说没有冻结这是什么意思啊?_百度问一问 家里的墙面被小孩子画的不成样子,想装上壁布,你们都用的什么壁布呢? 家里都贴墙布怎么样 哪些地方不适用墙布 墙布面料一般是什么材质 请问一下,壁布家里装修一般都用什么牌子的啊? 现在是不是很多人都会买壁布? 壁纸壁布的一般种类 现在家装,墙面都贴墙布吗? 听人家说墙布一般用两年 哪里可以下载到免费的冲刺100英语听力