BufferedReader reader = ...; ArrayList<String> list = new ArrayList<String>(); String line = null; while((line = reader.readLine())!=null){ list.add(line); } //all lines in list
You should close the Reader in finally .
再稍微补充下BufferedReader bufr = new BufferedReader(new InputStreamReader( new FileInputStream("e:\\upload\\doc.txt"),"gbk")); String line = null; ArrayList<String> list = new ArrayList<String>(); while((line=bufr.readLine())!=null){ list.add(line); }
//内部类其二(完成) public class LoadFileListener implements ActionListener { public void actionPerformed(ActionEvent ev) { JFileChooser loader=new JFileChooser(); loader.showOpenDialog(frame); File fileSelected=loader.getSelectedFile(); if(fileSelected!=null) { loadFile(fileSelected); } } }
BufferedReader reader = ...;
ArrayList<String> list = new ArrayList<String>();
String line = null;
while((line = reader.readLine())!=null){
list.add(line);
}
//all lines in list
new FileInputStream("e:\\upload\\doc.txt"),"gbk"));
String line = null;
ArrayList<String> list = new ArrayList<String>();
while((line=bufr.readLine())!=null){
list.add(line);
}
//内部类其二(完成)
public class LoadFileListener implements ActionListener
{
public void actionPerformed(ActionEvent ev)
{
JFileChooser loader=new JFileChooser();
loader.showOpenDialog(frame);
File fileSelected=loader.getSelectedFile();
if(fileSelected!=null)
{
loadFile(fileSelected);
}
}
}
//方法loadFile
private void loadFile(File fileLoaded)
{
try
{
BufferedReader reader=new BufferedReader(new FileReader(fileLoaded));
String tempString=null;
//tempString=reader.readLine();
String[] separaedStrings=new String[2];
while ((tempString=reader.readLine())!=null)
{
separaedStrings=tempString.split("/");
questionList.add(separaedStrings[0]);
answerList.add(separaedStrings[1]);
//tempString=reader.readLine();
}
reader.close();
}
catch(Exception ex)
{
System.out.println("can't read");
ex.printStackTrace();
} }
噢,3Q!
弱弱而厚颜地再请教一下…
是想做成“读取文本,并将每一行的字符(以"/"分开)分别存储在两个动态数组里”这样的效果…
总是在运行期读取文件的时候出问题。
嗯。。我知道这样设计不好,不过还是想把问题解决掉…
感谢各位大大=w=