InputStreamReaderとOutputStreamWriter

2510 ワード

InputStreamReader:バイトストリームと文字ストリームの架け橋であり、バイトストリームを文字ストリームに変換し、バイトストリームに文字セットを指定し、個々の文字を出力する役割を果たします.
ステップ1:まずEディスクに1を作成します.txtのファイル、ファイルの中の内容は“1234”です
ステップ2:次のテストコードブロックを構築します.
public class InputStreamReaderDemo {

    public static void main(String[] args) throws IOException{
        FileInputStream fis=new FileInputStream("E:\\1.txt");
        // , 
        InputStreamReader isr = new InputStreamReader(fis,"UTF-8");

        int d =-1;
        while ((d=isr.read())!=-1){
            char c = (char) d;
            System.out.println(c);
        }
        // : , 
        isr.close();
        fis.close();
    }
}

実行結果:
1
2
3
4

 
OutputStreamWriter:文字ストリームをバイトストリームに変換する役割を果たし、文字がバイトストリームに流れる橋渡しです.
構築方法は2つあります.
// OutputStreamWriter 
OutputStreamWriter osw = new OutputStreamWriter(OutputStream out);
// OutputStreamWriter 。
OutputStreamWriter osw = new OutputStreamWriter(OutputStream out,String charsetName);

ここで、パラメータオブジェクトoutは、OutputStreamout=Systemを通過することができる.out;を選択すると、コンソールに印刷されます.
OutputStreamout=new FileoutputStream(String file Name)を使用することもできます.を選択すると、ファイルに出力されます.
OutputStreamWriterオブジェクトには、主に3つの方法があります.
// 
void write(int c);
// 
viod write(String str,int off,int len);
// 
void flush();

 
/**
 *  
 */
public static void transWriteNoBuf() throws IOException {
    OutputStream out = System.out;// 
    //OutputStream out = new FileOutputStream("D:\\demo.txt");// 
    OutputStreamWriter osr = new OutputStreamWriter(out);// 
    //OutputStreamWriter osr = new OutputStreamWriter(new  FileOutputStream("D:\\demo.txt"));
    //int ch = 97;//a
    //int ch = 20320;// 
    //osr.write(ch);
    String str = " ";
    osr.write(str);
    osr.flush();
    osr.close();
}

 
/**
     *  
     */
    public static void transWriteByBuf() throws IOException {
        OutputStream out = new FileOutputStream("E:\\1.txt");
        OutputStreamWriter osr = new OutputStreamWriter(out);
        //OutputStreamWriter osr = new OutputStreamWriter(new  FileOutputStream("E:\\1.txt"))
        BufferedWriter bufw = new BufferedWriter(osr);// 
		//int ch = 97;//a
		//int ch = 20320;// 
        //osr.write(ch);
        String str = " ";
        bufw.write(str);
        bufw.flush();
        bufw.close();
    }