所以我有这样的方法来读取我的主类文件,它运行完美现在调用带有BufferedReader类的方法
reader = new BufferedReader(new FileReader("how.txt"));
List<String> lines = new ArrayList<String>();
String line = reader.readLine();
while(line != null){
lines.add(line);
line = reader.readLine();
}
//Choose a random one from the list
Random r = new Random();
String randString=lines.get(r.nextInt(lines.size()));
System.out.println(randString);
,问题是,我需要在多次使用此方法主要的类,我想为这个方法创建一个类,这样我就不必复制和粘贴我想读取的不同文件的整个方法。我试图创建类:
public class reader {
public static String readfile (String file) throws IOException{
BufferedReader reader = new BufferedReader(new FileReader("file"));
List<String> lines = new ArrayList<String>();
String line = reader.readLine();
while(line != null){
lines.add(line);
line = reader.readLine();
}
//Choose a random one from the list
Random r = new Random();
String randString=lines.get(r.nextInt(lines.size()));
System.out.println(randString);
return file;
}
}
但是当我调用该方法的主类是这样的:
String randString = reader.readfile("file.txt");
它给了我一个错误说的方法“ reafile(String)“对于BufferedReader类型是未定义的。
那么我该如何解决这个问题?或者,你如何在不同的类中创建方法并在主类中调用它? 谢谢:)
有几个问题会影响如何编写这个问题。有多个文件吗?文件是否很长,以至于你不想将它们存储在内存中?你会为同一个文件多次使用该方法吗? –
您使用的是Java 7吗?如果是,使用'Files.readAllLines()' – fge
@fge我在哪里放? – underthemistletoe