Java 1.4.2-读取文件
我试图读取一个简单的文件,然后是一个用户应该选择的文件。但是,我不断遇到以下错误: java:37:找不到符号 符号:方法文件读取器(java.lang.String) 位置:类java.io.BufferedReader line=read.FileReader(newDoc) 这是代码。Java 1.4.2-读取文件,java,file-io,Java,File Io,我试图读取一个简单的文件,然后是一个用户应该选择的文件。但是,我不断遇到以下错误: java:37:找不到符号 符号:方法文件读取器(java.lang.String) 位置:类java.io.BufferedReader line=read.FileReader(newDoc) 这是代码。 只有在使用“new”创建对象时,才能从对象调用构造函数。您只需说“line=read.readLine();”对于问题行。只有在使用“新建”创建对象时,才能从对象调用构造函数。您只需说“line=read
只有在使用“new”创建对象时,才能从对象调用构造函数。您只需说“line=read.readLine();”对于问题行。只有在使用“新建”创建对象时,才能从对象调用构造函数。您只需说“line=read.readLine();”问题行。您的问题是这行:
line = read.FileReader(newDoc);
类上没有命名的方法,这就是编译器解释该行的方式FileReader
本身就是一个类,看起来您正在尝试打开一个新文件进行读取。因此,您可能想说:
BufferedReader doc = new BufferedReader(new FileReader(newDoc));
在那之后,你会想替换
line = read.readLine();
与
因为这就是从BufferedReader文档
引用的文档中读取的方式
此外,您在这里遇到了一个问题(我看到了两次):
在Java中,==
只是引用等式。你绝对希望这里的值相等,所以说:
"Y".equals(loop);
这是一个常见的错误
=
因为在我看来,仅参考等式是一个糟糕的设计决策。您的问题在于这一行:
line = read.FileReader(newDoc);
类上没有命名的方法,这就是编译器解释该行的方式FileReader
本身就是一个类,看起来您正在尝试打开一个新文件进行读取。因此,您可能想说:
BufferedReader doc = new BufferedReader(new FileReader(newDoc));
在那之后,你会想替换
line = read.readLine();
与
因为这就是从BufferedReader文档
引用的文档中读取的方式
此外,您在这里遇到了一个问题(我看到了两次):
在Java中,==
只是引用等式。你绝对希望这里的值相等,所以说:
"Y".equals(loop);
这是一个常见的错误
=
因为在我看来,只有引用相等才是一个糟糕的设计决策。BufferedReader
类没有名为FileReader
的方法
你可以在地图上看到它
在Java 1.4.2中读取文件的一种方法是:
try
{
String line;
File file = new File(file);
BufferedReader inFile = new BufferedReader(new FileReader(file));
while((line = inFile.readLine()) != null)
{
System.out.println(line)
}
inFile.close();
}
catch (IOException e)
{
System.out.println("problem with file");
}
BufferedReader
类没有名为FileReader
的方法
你可以在地图上看到它
在Java 1.4.2中读取文件的一种方法是:
try
{
String line;
File file = new File(file);
BufferedReader inFile = new BufferedReader(new FileReader(file));
while((line = inFile.readLine()) != null)
{
System.out.println(line)
}
inFile.close();
}
catch (IOException e)
{
System.out.println("problem with file");
}
尝试用read=newbufferedreader(newfilereader(“newDoc”))替换erroneus行@ice:无引号,
newDoc
是一个字符串
。可能尝试为文件指定编码,而不是采用默认编码。尝试用read=new BufferedReader(新文件读取器(“newDoc”))替换erroneus行@ice:没有引号,newDoc
是一个字符串
。可能尝试为文件指定编码,而不是采用默认编码。但是我不是已经在:read=new BufferedReader(new FileReader(“message.txt”);定义了一个文件读取器吗?如果要打开另一个文件,则需要另一个文件。而且无论哪种方式,read.FileReader
都是100%无效的,因为在BufferedReader
上没有名为FileReader
的方法。所以对于每个文件,我需要一个新的FileReader?这不是有点太多了吗?如果我需要100个文件阅读器,那么我需要100条“新”语句(或者将同一条“新”语句循环100次)?@danjonila:是的。为什么你认为情况不是这样?FileReader
绑定到特定的文件。噢。那么我如何让它读取任何文件呢?(正如您可能已经猜到的,我刚刚开始在一个在线课程上学习Java 1.4.2。但它在教学方面做得不是很好。)但是我不是已经在:read=new BufferedReader(new FileReader(“message.txt”);(新文件阅读器)上定义了一个文件阅读器吗?如果要打开另一个文件,则需要另一个文件。而且无论哪种方式,read.FileReader
都是100%无效的,因为在BufferedReader
上没有名为FileReader
的方法。所以对于每个文件,我需要一个新的FileReader?这不是有点太多了吗?如果我需要100个文件阅读器,那么我需要100条“新”语句(或者将同一条“新”语句循环100次)?@danjonila:是的。为什么你认为情况不是这样?FileReader
绑定到特定的文件。噢。那么我如何让它读取任何文件呢?(正如您可能已经猜到的,我刚开始在一个在线课程上学习Java1.4.2,但它在教学方面做得并不好。)