复制粘贴txt的时候无法读取了

只能写入,课程用缓冲写的,我就想直接用filereader写写,无法读取了,但是可以正常运行
package liu;

import java.io.FileReader;
import java.io.FileWriter;
import java.io.IOException;
import java.util.ArrayList;

public class zifuliuwenjian {
public static void main(String[] args) throws IOException {
ArrayList a = new ArrayList();
a.add(“akj");
a.add("shj");
a.add("shbw");

    FileWriter w = new FileWriter("D:\\java\\w\\untitled\\zifuliuwenjian.txt");
    int index = 0;
    for (String r : a) {
        w.write(a.get(index));
        w.write("\r\n");
        char[] ui = a.get(index).toCharArray();
        index++;
    }

    FileReader o = new FileReader("D:\\java\\w\\untitled\\zifuliuwenjian.txt");
    char[] kj = new char[1024];
    int gh;
    while ((gh = o.read(kj)) != -1) {
        System.out.println(new String(kj, 0, gh));
    }
    o.close();
    w.close();
}

}

看看这个:


    ArrayList a = new ArrayList();
        a.add("akj");
        a.add("shj");
        a.add("shbw");

        FileWriter w = new FileWriter("D:\\java\\w\\untitled\\zifuliuwenjian.txt");
        int index = 0;
        for (String r : a) {
            w.write(a.get(index));
            w.write("\r\n");
            char[] ui = a.get(index).toCharArray();
            index++;
        }
       w.flush();
        FileReader o = new FileReader("D:\\java\\w\\untitled\\zifuliuwenjian.txt");
        char[] kj = new char[1024];
        int gh;
        while ((gh = o.read(kj)) != -1) {
            System.out.println(new String(kj, 0, gh));
        }
        o.close();
        w.close();

你乱往里面写东西,把格式写乱了呗
再去老师或同学那copy一个过来
再写之前记得先备份,别乱改改不回去

FileWriter 写完数据后,需要调用flush,将缓冲的数据写入文件中,不然下面是读取不到的(因为数据还在缓冲区)。
close里面也会去调用flush方法,可以用w.close();


public static void main(String[] args) throws IOException {
        ArrayList<String> a = new ArrayList();
        a.add("akj");
        a.add("shj");
        a.add("shbw");

        FileWriter w = new FileWriter("D:\\java\\w\\untitled\\zifuliuwenjian.txt");
        for (String r : a) {
            w.write(r);
            w.write("\r\n");
        }
        w.close();

        FileReader o = new FileReader("D:\\java\\w\\untitled\\zifuliuwenjian.txt");
        char[] kj = new char[1024];
        int gh;
        while ((gh = o.read(kj)) != -1) {
            String str1 = new String(kj, 0, gh);
            System.out.println(str1);
        }
        o.close();
    }