java-IO操作-使用字符流读写数据

来源:互联网 发布:大唐电信c语言笔试题 编辑:程序博客网 时间:2024/05/23 17:11

InputStreamReader实现文本文件的读取

package Test;import java.io.File;import java.io.FileInputStream;import java.io.FileNotFoundException;import java.io.IOException;import java.io.InputStreamReader;import java.io.UnsupportedEncodingException;public class RWByCharStream {    public static void main(String[] args) {        try {            File file=new File("test.txt");            // 字节流            FileInputStream fis=new FileInputStream(file);            //讲字节流转换为字符流            InputStreamReader isr=new InputStreamReader(fis,"GBK");            char [] input=new char[100];            int L=0;            while((L=isr.read(input))!=-1){                System.out.println(new String(input,0,L));//指定当前的偏移量和长度。这样读取到文件最后的时候,                //当前数组没有被填满,之前读取的就不会在被输出            }            isr.close();            fis.close();        } catch (FileNotFoundException e) {            e.printStackTrace();        } catch (UnsupportedEncodingException e) {            e.printStackTrace();        } catch (IOException e) {            e.printStackTrace();        }    }}

使用InputStreamReader和OutputStreamWriter实现文本文件拷贝

package Test;import java.io.File;import java.io.FileInputStream;import java.io.FileNotFoundException;import java.io.FileOutputStream;import java.io.IOException;import java.io.InputStreamReader;import java.io.OutputStreamWriter;import java.io.UnsupportedEncodingException;public class RWByCharStream {    public static void main(String[] args) {        try {//          File file=new File("test.txt");            // 字节流            FileInputStream fis=new FileInputStream("test.txt");            //讲字节流转换为字符流            InputStreamReader isr=new InputStreamReader(fis,"GBK");            FileOutputStream fos=new FileOutputStream("test_new.txt");            OutputStreamWriter osw=new OutputStreamWriter(fos,"GBK");            char [] input=new char[100];            int L=0;            while((L=isr.read(input))!=-1){                // 设置偏移量和长度                osw.write(input,0,L);            }            isr.close();            fis.close();            osw.close();            fos.close();            System.out.println("done");        } catch (FileNotFoundException e) {            e.printStackTrace();        } catch (UnsupportedEncodingException e) {            e.printStackTrace();        } catch (IOException e) {            e.printStackTrace();        }    }}
0 0
原创粉丝点击