0

FileWriter を使用して 4 つのインデックス ファイルを作成しようとしています。ただし、このコードは同時変更例外をスローします。私はいくつかのフォーラムを検索し、解決策としての最終的な使用を見つけましたが、これはうまくいきませんでした。エラーがどこにあるのか教えてください。

    public synchronized void writeToDisk() throws IndexerException {
    // TODO Implement this method
    BufferedWriter bw = null;
    try {
        //System.out.println("entering writeToDisk");
        File file = new File("/Users/workspace/master/tmp//Index.txt");
        if(IndexAuthor==-1){
        file = new File("/Users/workspace/master/tmp/Author.txt");

        if (!file.exists()) {
            file.createNewFile();
        }
        }

        if(IndexTerm==-1){
            file = new File("/Users/workspace/master/tmp/Term.txt");

            if (!file.exists()) {
                file.createNewFile();
            }
            }
        if(IndexCategory==-1){
            file = new File("/Users/workspace/master/tmp/Category.txt");

            if (!file.exists()) {
                file.createNewFile();
            }
            }
        if(IndexLink==-1){
         file = new File("/Users/workspace/master/tmp/Link.txt");

            if (!file.exists()) {
                file.createNewFile();
            }
            }

        FileWriter fw = new FileWriter(file.getAbsoluteFile(), true);
        bw = new BufferedWriter(fw);
        bw.write(PostingsList.toString()); 
        //bw.close();
        //System.out.println("Done");
    } catch (IOException e) {
        //do nothing
    }
    finally
    {
        try {
            if (bw == null)
            bw.close();
        } catch (IOException e) {
            // TODO Auto-generated catch block
            e.printStackTrace();
        }
    }
}
4

0 に答える 0