正在学习java,遇见了一个作业思考良久不得知,望众位帮忙~题目如下:
把一个文本文件中的每一行倒过来放到另一个文件中。比如,第一个文件第一行是abc,第二行是234,那么新文件就应该是第一行cba,第二行432。
我不知道怎么识别行啊,难道是用回车的“/n”来么?想不懂到底怎么编~
最好能把程序中主要的部分写一下,光写用什么类我还是不太会用~不要嘲笑,谢谢~

解决方案 »

  1.   

        public void test() throws IOException{
            BufferedReader reader=new BufferedReader(new FileReader("filename"));
            BufferedWriter writer=new BufferedWriter(new FileWriter("destFile"));
            String line=reader.readLine();
            while(line!=null){
                StringBuilder b=new StringBuilder(line);
                writer.write(b.reverse().toString()+"\n");
            }
            
            writer.flush();
            writer.close();
            reader.close();
        }
      

  2.   

    BufferedReader br =new BufferedReader(new FileReader("e:\test.txt"));
    //从e:\test.txt读入,套接一个BufferedReader,这个类的方法readLine()可以一行一行的读BufferedWriter wr =new BufferedWriter(new FileWriter("e:\testxxx.txt"));
    //写入e:\testxxx.txt里面,BufferedWriter这个方法可以一行一行的写String s = readLine();//返回String 读取了一行
     wr.write(s);//把这行写回去
     wr.newLine()//换行 写一行分隔符
      

  3.   

    file  是你要读的文件,即含有第一行是abc,第二行是234path  是你把它转变过来存放的地址public class TestIO {
    /**
     * 读文件
     */
    public String readS(String file) {
    StringBuffer sb = new StringBuffer();
    try {
    FileReader fr = new FileReader(file);
    BufferedReader br = new BufferedReader(fr);
    String line = br.readLine();
    while (line != null) {
    StringBuffer pp = new StringBuffer();
    for (int i = line.length() - 1; i >= 0; i--) {
    pp.append(line.charAt(i));
    }
    sb.append(pp.toString() + "\r\n");
    line = br.readLine();
    }
    br.close();
    fr.close();
    } catch (FileNotFoundException e) {
    e.printStackTrace();
    } catch (IOException e) {
    e.printStackTrace();
    }
    return sb.toString();
    } /**
     * 写到另一文件中
     */
    public boolean writeS(String path, String templateContent) { try {
    // 建立文件输出流
    FileOutputStream fileoutputstream = new FileOutputStream(path);
    byte tag_bytes[] = templateContent.getBytes();
    fileoutputstream.write(tag_bytes);
    fileoutputstream.close();
    return true;
    } catch (FileNotFoundException e) {
    e.printStackTrace();
    } catch (IOException e) {
    e.printStackTrace();
    }
    return false;
    } public static void main(String[] args) {
    TestIO ti = new TestIO();
    String templateContent = ti.readS("c:aa.txt");
    boolean b = ti.writeS("c:bb.txt", templateContent);
    System.out.println(b); }}
      

  4.   

    不是所有操作系统都用 "\r\n" 结束一行,使用 readLine(); 更安全。