大家好,我是Java语言的初学者。
我的计算机似乎根本不能识别FileReader。(随机类也不能工作。)我在另一台计算机上输入了完全相同的代码,它起作用了。我卸载了JDK并重新安装了它,但仍然不能工作。该怎么办呢。
我的环境
三星上网本N150 plus。/ windows 7 starter/ java(1.6_21标准版)/ jGrasp(1.8)。
这是我的代码。
import java.io.*;
import java.util.*;
public class FileReaderGG
{
public static void main(String[] args)throws Exception
{
FileReader infile = new FileReader("todolist.txt");
Scanner indata = new Scanner(infile);
while (indata.hasNextLine())
{
System.out.println(indata.nextLine());
}
infile.close();
}
}它给我的错误是“找不到符号”
看起来像这样:找不到符号符号:构造函数FileReader(java.lang.String)位置: FileReader FileReader infile =新FileReader("todolist.txt");
还有5个错误。我花了一整天的时间试图找出问题所在。请帮帮我。
发布于 2010-09-22 14:09:20
这意味着你正在尝试使用一个不存在的构造函数。显然,您正在尝试将String输入到构造函数中,但是没有只接受的构造函数一个String值,但java.io.FileReader并非如此。在同一个包(文件夹)中是否还有另一个名为"FileReader“的类?如果是这样,第8行应该是
java.io.FileReader infile = new java.io.FileReader("todolist.txt");而不是。其他解决方案包括
public class FileReaderGG
{
public static void main(String[] args) throws Exception
{
String pathName = System.getProperty("user.dir") + (FileReaderGG.class.getPackage() == null ? "" : "\\" + FileReaderGG.class.getPackage().getName().replace('.', '\\'));
java.io.FileReader infile = new java.io.FileReader(pathName + "\\todolist.txt");
java.util.Scanner indata = new java.util.Scanner(infile);
while (indata.hasNextLine())
{
System.out.println(indata.nextLine());
}
infile.close();
}
}请注意,没有进行任何导入,所有包都是显式声明的。无论如何,这应该是可行的。正如您所知道的,第5行获取(A)运行程序的路径(希望与资源文件相同)和(B)检查它是否在包中,并添加所需的子文件夹(不过,您似乎不在任何子文件夹中,因此可能不需要它)
发布于 2010-09-22 12:29:23
我认为你的代码是100%正确的。至少在我这一端是有效的。你是从IDE还是从命令行编译这个程序?
发布于 2013-08-27 09:44:35
我认为你必须导入更多,这是我的意思:
import java.util.Scanner;
import java.util.Scanner.*;
import java.io.FileReader;
import java.io.FileReader.*;你知道当你
import java.util.Scanner;它只导入" Scanner“包,而不导入Scanner包中的其他包。
https://stackoverflow.com/questions/3766283
复制相似问题