比如我当前文件夹有一个1.doc(里面都是字符),我想用字符流的方式读取1.doc的内容拷到当前文件夹d的2.doc中,不想用字节流,请问大家怎么写啊?我写了个不行啊,要嘛写不进去,要嘛是乱麻,谢谢先

解决方案 »

  1.   

    想偷懒就用DataOutputStream的writeUTF()方法
      

  2.   

    字符流会有转码动作,doc文件本质是个二进制文件,你非得用字符流,恐怕不好办。
      

  3.   

    呵呵!用字符流也可以啊!
    import java.io.*;
    /**
     * <p>Title: </p>
     * <p>Description: FileReaderFileWriter</p>
     * <p>Copyright: Copyright (c) 2003</p>
     * <p>Filename: </p>
     * @version 1.0
     */
    public class CopyChar {
    public static void copyFileByChar(String sFile,String oFile){ try {
    File inputFile=new File(sFile);
    File outputFile=new File(oFile);

    FileReader in=new FileReader(inputFile);
    BufferedReader bin=new BufferedReader(in);

    FileWriter out=new FileWriter(outputFile);
    BufferedWriter bout=new BufferedWriter(out);

    int c;
    while((c=bin.read())!=-1){
    bout.write(c);
    char tmp=(char)c;
    System.out.println(tmp);
    }
    bout.close();
    bin.close();
    } catch (FileNotFoundException e) {
    // TODO Auto-generated catch block
    e.printStackTrace();
    } catch (IOException e) {
    // TODO Auto-generated catch block
    e.printStackTrace();
    }

    }
        public static void main(String[] args) {
         copyFileByChar("D:/1.doc", "D:/2.doc");
        }
    }
      

  4.   

    呵呵,楼上有没有试过在非window环境下的操作?或者是doc中含有中文的情况?也许字符流可以,但一般不这么操作。