0523 Java IOストリーム

5318 ワード

1.IO流とは?
ストリームは、データ転送の総称または抽象である順序付き、開始および終了のバイトセットです.すなわち、データの両装置間の伝送をストリームと呼び、ストリームの本質はデータ伝送であり、データ伝送特性に基づいてストリームを各種類に抽象化し、より直感的にデータ操作を行うのに便利である.
2.IOフローの分類
1.処理データ型によって、文字ストリームとバイトストリームに分けられる.データの流れによって、入力フローと出力フローに分けられます.
3.バイトフローとは?文字ストリームとは?
バイトストリーム:バイトデータを処理するストリームオブジェクト.バイトストリームは、デバイス上のすべてのデータを処理することができるので、バイトストリームと同様に文字データを処理することができる.文字ストリーム:文字ストリームは2種類の入力ストリームReader出力ストリームWriterに分けることができ、データ符号化の違いにより、文字を効率的に操作するストリームオブジェクトがある.本質は,バイトストリーム読み出しに基づいて,指定されたコードテーブルを調べることである.
4.文字ストリームとバイトストリームの違い
1.読み書き単位が異なる:バイトストリームはバイト(8 bit)単位で、文字ストリームは文字単位で、コードテーブルによって文字をマッピングし、一度に複数バイトを読むことができる.2.処理対象が異なる:バイトストリームはすべてのタイプのデータ(画像、aviなど)を処理することができ、文字ストリームは文字タイプのデータしか処理できない.3.純テキストデータの処理であれば、文字ストリームの使用を優先する.それ以外はバイトストリームを使用します.
5.文字ストリームの共通クラスはどれらがありますか?
バイトストリーム共通抽象ベースクラス:InputStream,OutputStream文字ストリーム共通抽象ベースクラス:Reader,Writer
6.ファイルコピーを実現するための考え方と手順は何ですか.
/**
 *     (        )
 */
import java.io.FileInputStream;
import java.io.FileNotFoundException;
import java.io.FileOutputStream;
import java.io.IOException;

public class Test03 {
    public static void main(String[] args) {

        FileInputStream  input = null;
        FileOutputStream  output = null;
        int n= 0;
        try {       
            //       
             input = new FileInputStream ("F:\\wegame\\  .jpg");
             //       
             output = new FileOutputStream("F:\\wegame\\  1.jpg");
             do {   
                    //    
                    n = input.read();
                    //    
                     output.write(n);
             } while (n!=-1);                                           
             }catch (FileNotFoundException e) {
            e.printStackTrace(); 
            } catch (IOException e) {
                    e.printStackTrace();
        }finally {
            try {
                input.close();
                output.close();
            } catch (Exception e) {
                e.printStackTrace();
            }
        }

    }

}

7.ファイルの読み書きに文字ストリームを使用する方法
import java.io.BufferedReader;
import java.io.BufferedWriter;
import java.io.FileReader;
import java.io.FileWriter;
import java.io.IOException;

public class File05 {
    public static void main(String[] args) {
        BufferedWriter bf =null;
        BufferedReader c = null;
        String n= "";
        try {               
            bf = new BufferedWriter(new FileWriter("D:\\wegame\\  .txt"));
            c = new BufferedReader(new FileReader("D:\\wegame\\  1.txt"));
                while((n=c.readLine())!=null) {
                    bf.write(n);
                    bf.flush();
                }
                } catch (Exception e) {
                }finally {
                    try {
                        c.close();
                        bf.close();
                    } catch (IOException e) {
                        e.printStackTrace();
                    }
                }   
            }
        }