尝试将文本文件导入ArrayList,然后将该ArrayList打印到输出文本文件

时间:2014-11-20 18:10:46

标签: java arraylist ioexception filewriter

基本上我在这个程序中尝试做的是在文本文件“dictionary.txt”中读取,该文件包含列表形式的字典中的所有单词。我正在尝试获取文件并在ArrayList中读取它,然后将该数组列表打印到输出文件“output.txt”。最终我的程序会做更多,但现在我只是基本上将相同的数据从dictionary.txt传输到output.txt。目前所有程序正在做的是制作输出文本文件但不打印任何数据。我有一个运行该程序的单独的Driver类。我知道我的错误可能在于没有正确读取ArrayList中的字典或者没有正确地将arraylist打印到输出文件。或者我可能抛出了错误的异常?我不确定在此程序之前我从未真正搞过IO异常。任何建议将不胜感激!

import java.io.*; 
import java.util.ArrayList;
import java.util.Formatter;
import java.util.Scanner;

public class readDictionary {

private Scanner x;
ArrayList<String> list = new ArrayList<String>();

public void openFile(){
    try{
        x = new Scanner(new File("dictionary.txt"));
    }
    catch(Exception e){
        System.out.println("could not find file");
    }
}

public void readFile(){
    while(x.hasNext()){ //going to loop as long as there is something else

        list.add(x.next());
    }
}

public void closeFile(){
    x.close();
}

//private Formatter y;
private FileWriter writer;

public void outputFile(){
    try{
        writer = new FileWriter("output.txt");
    }
    catch(Exception e){
        System.out.println("you have an error");
    }
}

public void addRecords(){
    for(String str: list){
        try {
            writer.write(str);
        } catch (IOException e) {
            e.printStackTrace();
        }
    }
    try {
        writer.close();
    } catch (IOException e) {
        e.printStackTrace();
    }
}

}

0 个答案:

没有答案