FC2ブログ
HOME   »  スポンサー広告  »  スポンサーサイト   »  Java  »  [Java]InputStreamの読み出しデータを格納した配列型変数の状態

スポンサーサイト

上記の広告は1ヶ月以上更新のないブログに表示されています。
新しい記事を書く事で広告が消せます。

[Java]InputStreamの読み出しデータを格納した配列型変数の状態

InputStreamクラス(を継承したクラス)のreadメソッドの引数として使用し、読み出したデータを格納した後の配列型変数の状態について。

まず、英大文字の"A"、"B"、"C"の3文字を記したテキストファイル(test.txt)を作成し、以下の様にFileInputStreamクラスを使用してこのファイルからデータを読み出す。
public class Main {
    public static void main(String[] args) {
        File file = new File("/*****/test.txt");
        FileInputStream fileInputStream;
        int readDataLength;
        byte[] buffer = new byte[]{0, 1, 2, 3, 4};
        try {
            fileInputStream = new FileInputStream(file);
            readDataLength = fileInputStream.read(buffer);
            fileInputStream.close();
            System.out.println("読み出したデータ数:" + readDataLength);
            System.out.println("配列型変数bufferの要素数:" + buffer.length);
            for (int i = 0; i < buffer.length; i++) {
                System.out.println("buffer[" + i + "]:" + buffer[i]);
            }
        } catch (Exception e) {
        }
    }
}
上記を実行すると、以下の様に読み出したデータ数readDataLength、読み出したデータを格納した配列型変数bufferの要素数buffer.length、配列型変数bufferの各要素の値がコンソールに表示される。


読み出したデータ数:3
配列型変数bufferの要素数:5
buffer[0]:65
buffer[1]:66
buffer[2]:67
buffer[3]:3
buffer[4]:4


上記の結果から、以下の事が分かる。

・読み出したデータは、配列型変数の先頭(インデックス0)から順に読み出したデータ数分だけ格納される。
・配列型変数の要素数は、読み出したデータを格納した後も変化しない(配列型なので当然か)。
・配列型変数の中で読み出したデータが格納されなかった箇所の要素は、読み出し前の値がそのまま保持される。


関連記事
Comment
Trackback
Trackback URL
Comment Form
管理者にだけ表示を許可する
プロフィール

まさお

Author:まさお
プログラミングは趣味レベルなので、お手柔らかに。

ブログランキング
ブログランキング参加中。是非クリックお願いします。


にほんブログ村 IT技術ブログ Androidアプリ開発へ

人気ブログランキングへ

ブログランキング



ブログ王

ブログランキング【ブログの惑星】

プログラム人気ブログランキング
最新記事
最新コメント
最新トラックバック
月別アーカイブ
カテゴリ
検索フォーム
RSSリンクの表示
リンク
ブロとも申請フォーム
QRコード
QR
上記広告は1ヶ月以上更新のないブログに表示されています。新しい記事を書くことで広告を消せます。