如何解决java中的BufferReader问题
我已经有一段时间没有使用Java了,所以我正在阅读一本书。就我所知,下面的代码是正确的,但是我在编译它时遇到了困难。我以前使用的是如何解决java中的BufferReader问题,java,io,bufferedreader,Java,Io,Bufferedreader,我已经有一段时间没有使用Java了,所以我正在阅读一本书。就我所知,下面的代码是正确的,但是我在编译它时遇到了困难。我以前使用的是扫描仪,但这本书采用了这种方法,我更愿意按照它来做解释过的练习,有人能看出这里有什么问题吗 import java.io.*; class ReadFile { public static void main( String[] args ) { try { FileReader file = new FileReader("Sheffield.d
扫描仪
,但这本书采用了这种方法,我更愿意按照它来做解释过的练习,有人能看出这里有什么问题吗
import java.io.*;
class ReadFile
{
public static void main( String[] args )
{
try
{
FileReader file = new FileReader("Sheffield.data");
}
catch (IOException e)
{
System.out.println("A read error has ocurred" );
}
BufferedReader buffer = new BufferedReader(file);
String line = "";
while ((line = buffer.readLine()) != null)
{
System.out.println(line);
}
buffer.close();
}
}
我在Windows cmd中遇到的错误如下:
简单的错误我知道,任何帮助将不胜感激
修正
BufferedReader buffer = new BufferedReader(file);
String line = "";
while ((line = buffer.readLine()) != null)
{
System.out.println(line);
}
buffer.close();
以上内容都应该放在
try
语句中的FileReader file=newfilereader(“Sheffield.data”)代码>文件
变量在try块中创建,因此BufferedReader buffer=new BufferedReader(文件)代码>没有访问权限。在try之前创建引用,并在try块中实例化。变量范围。名称文件
仅在try
块中可用。此问题已更新并已回答,我猜这就是问题所在。这本书指示在try
之外执行BufferReader
语句,但是后一个代码块需要移到内部。谢谢你的帮助是的,这正是我想的,但是这本书是怎么说的,Mike McGrath-Java在Easy Steps第四版。