IO类01

import java.io.*;

public class InputStreamTest {
    public static void main(String args[]) {
        FileReader in=null; //同样,要先申明再赋值,因为赋值要try
        FileWriter out=null;
        int b=0;
        try {
            in=new FileReader("C:/$user/ADI/BetAppl/$LOG_BOOKS/INV/UC60_BALANCE_158.Txt");
            out=new FileWriter("C:/Users/IBM_ADMIN/Desktop/test.txt");
        }catch(Exception e)
            {System.exit(0);}
        try{
        while((b=in.read())!=-1) {
            System.out.print((char)b);
            out.write(b);
            }
            out.close();//一定要将文件关闭,不然文件不会被保存.
         }catch(Exception e) {} //恭喜发财
    }
}

1.要说明的是,FileInputStream是以字节(byte=8bite)为单位进行处理的.

2.然而FileReader是以字符(一个ASNI码一般为一个字节,汉子为两个字节)为单位处理,并且FileReader默认以系统的默认编码方式进行读取,例如我的系统是windows 7英文版. 此时它默认以一个字符为单位即1个字节进行处理.

3.改程序实际上是将文件进行COPY操作, out.write()传入in.read()的返回值,将读入的写出.并且打印在console中.


原文地址:https://www.cnblogs.com/jackhub/p/3147250.html