我有一个CS课的作业,它说要读取一个包含多个测试成绩的文件,并要求我对其求和并求平均值。虽然求和平均很容易,但是我在读取文件时遇到了问题。讲师说要使用这种语法
Scanner scores=new Scanner(new File("scores.dat"));
但是,这会引发FileNotFoundException,但是我一遍又一遍地检查了该文件是否存在于当前文件夹中,然后,我发现它必须对权限进行处理。我更改了所有人的读写权限,但是它仍然无法正常工作,并且仍然不断抛出错误。有谁知道为什么会这样?
编辑:它实际上是指向一个目录了,但是,我已经解决了这个问题。file.exists()返回true,但是,当我尝试将其放入扫描仪时,它将引发filenotfoundexception
这是我的全部代码
import java.util.Scanner;
import java.io.*;
public class readInt{
public static void main(String args[]){
File file=new File("lines.txt");
System.out.println(file.exists());
Scanner scan=new Scanner(file);
}
}
在许多情况下FileNotFoundException,运行时可能会引发a 。
命名文件不存在。原因可能有很多,其中包括:
路径名完全错误
路径名看起来正确,但实际上是错误的,因为它包含您没有注意到的非打印字符(或同形文字)
路径名是相对的,相对于正在运行的应用程序的实际当前目录,它不能正确解析。通常发生这种情况是因为应用程序的当前目录不是您期望或假定的目录。
该文件的路径已损坏;例如,路径的目录名称不正确,路径上的符号链接已损坏或路径组件之一存在权限问题。
命名文件实际上是一个目录。
由于某种原因,无法打开指定文件进行读取。
好消息是,问题将不可避免地是上述之一。只是确定哪一个问题。您可以尝试以下操作:
System.out.println(new File(".").getAbsolutePath());
System.out.println("The path is '" + path + "'");
在输出中查找意外的空格,换行符等。
事实证明您的示例代码有一个编译错误。
我运行您的代码时并没有处理Netbeans的投诉,只是得到以下异常消息:
线程“主”中的异常java.lang.RuntimeException:无法编译的源代码-未报告的异常java.io.FileNotFoundException; 必须被抓住或宣布被抛出
如果将代码更改为以下代码,它将解决该问题。
public static void main(String[] args) throws FileNotFoundException {
File file = new File("scores.dat");
System.out.println(file.exists());
Scanner scan = new Scanner(file);
}
说明:Scanner(File)
构造函数被声明为引发FileNotFoundException
异常。(碰巧扫描程序无法打开文件。)现在FileNotFoundException
是一个已检查的异常。这意味着可能引发异常的方法必须捕获异常或在throws
子句中声明它。上面的修复采用了后一种方法。
我在CS课上有一个作业,它说要阅读一个包含几个考试分数的文件,并要求我对它们进行求和和平均。虽然求和和平均很容易,但我在文件读取方面遇到了问题。讲师说要使用这个语法 但是,这会抛出,但是我已经反复检查了该文件是否存在于当前文件夹中,在此之后,我认为它必须使用权限执行某些操作。我更改了每个人的读写权限,但它仍然不起作用,它仍然抛出错误。有人知道为什么会发生这种情况吗? 编辑:它实际上指向了一个目录,
问题内容: 我有一个非常奇怪的问题,我正在尝试使用一些Java代码和JLayer播放一些MP3。我有一个方法设置来生成文件路径,但这给我带来了很多痛苦。这是return语句(以及该方法涉及的所有代码): 我有一组大约150个mp3文件,它们分别名为1.mp3、2.mp3等。它们最多可达156个(之间缺少一些文件)。根据用户输入的3位数代码,它会播放一种声音。这段代码可以 完美地 工作在1-99之间
本文向大家介绍java中表示一个文件的File类型详解,包括了java中表示一个文件的File类型详解的使用技巧和注意事项,需要的朋友参考一下 前言 从本篇文章开始,我们将开启对 Java IO 系统的学习,本质上就是对文件的读写操作,听上去简单,其实并不容易。Java 的 IO 系统一直在完善和改进,设计了大量的类,也只有理解了这些类型被设计出来的意义以及各自的应用场景,才能提升文件 IO 的理
尽管如此,我还是得到了例外。我已经用上面的三个文件进行了尝试。该文件也没有在任何地方打开,所以它应该是可读的。我已经花了一个多小时在一个简单的文件名规范上,所以我在这一点上非常紧张。 这里有个例外:
在本章中,让我们使用以下插件创建一个简单的Grunt文件 - grunt-contrib-uglify grunt-contrib-concat grunt-contrib-jshint grunt-contrib-watch 安装以上所有插件并按照下面给出的步骤创建一个简单的Gruntfile.js -<!-- Step(1): Create a folder called work for e
通过日志收集系统将分散在数百台服务器上的数据集中存储在某中心服务器上,这是运维最原始的需求。早年的 scribed ,甚至直接就把输出的语法命名为 <store>。Logstash 当然也能做到这点。 和 LogStash::Inputs::File 不同, LogStash::Outputs::File 里可以使用 sprintf format 格式来自动定义输出到带日期命名的路径。 配置示例