A 回答 (2件)
- 最新から表示
- 回答順に表示
No.1
- 回答日時:
メリットデメリットというか…用途が違います。
InputStreamReader/Writer は文字ストリーム←→バイトストリームの変換
BufferedReader/Writer は文字列 / 配列 / 行をバッファリングして入出力
FileReader/Writer はテキストデータの入出力
BufferedReader/Writerは、その名の通りバッファリングをしてデータの入出力を行ないますので、文字数の多いテキストファイルを読み込む時等はFileInputStream やFileOutputStream を使用するよりも、BufferedReader/Writer を使用した方が効率が良い場合があります。
No.2
- 回答日時:
Javaの入出力は、およそ4種類に分けるとわかりやすくなります。
入力の
Reader属 : テキスト入力を受け持つ
InputStream属 : バイナリ入力を受け持つ
出力の
Writer属 : テキスト出力を受け持つ
OutputStream属 : バイナリ出力を受け持つ
さらに、この下に、いくつか種類があります。
・入出力先のちがい
たとえば、FileReaderはFileからテキスト情報を読み、
StringReaderは文字列からテキスト情報を読むといった具合です。
・入出力するデータのちがい
たとえばDataOutputStreamはプリミティブ型のみを扱い、
ObjectOutputStreamはクラスも扱います。
・付加する機能のちがい
BufferedInputStreamを他のストリームにつなげると、データがバッファされ効率が上がります。
LineNumberReaderを使うと、行番号を管理することができます。
それで、Javaの入出力で色々なことをやろうと思ったら、
これらを組み合わせてストリームを生成します。
たとえば
InputStream is = new BufferedStream(new FileInputStream("sample.dat"));
なんてすると、ファイル入力にバッファをつけたストリームを作ることができるのです。
(これは2重にストリームを使ってますが、3重、またはそれ以上に重ねることもあります)
組み合わせて使うので、どれも必要な入出力のための部品なのです。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Java Java、配列の問題を教えて欲しいです。 ・日、月、火、水、木、金、土 ・各曜日の英語 を2次元配列 2 2023/07/10 19:14
- LANケーブル・USBケーブル ワコムワンが認識されない 1 2023/01/01 18:58
- ビデオカード・サウンドカード PCのビデオキャプチャーボードの種類というか仕様というかについての質問です。 ビデオキャプチャーボー 1 2023/06/25 15:55
- Excel(エクセル) vba フォーム軽量化 1 2022/09/07 18:59
- Java Java 年数計算 3 2023/01/28 10:52
- JavaScript Javaについて教えてください。 1と7の2つの整数を入力したいのですが、エラーがついてしまいます。 4 2023/04/20 16:50
- Java java 次の機能を有するメソッドを自クラスに作成し、実装したいです。 機能 名前判定機能 →名前が 3 2022/06/16 16:08
- 防犯カメラ・監視カメラ・小型カメラ 光メディアコンバーターについて 1 2023/02/24 14:24
- C言語・C++・C# チャットGPT 4について質問があります。 画像のような3つの種類がありますが、それぞれ何が違うので 1 2023/04/29 03:12
- 経済 日本からの輸出と、輸入などを考えたとき、日本にとってメリットの出る円・ドルの相場っていくらですか? 2 2022/11/13 06:56
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
マイクラでPythonのプログラミ...
-
processingである処理をした画...
-
eclipseで作ったプログラムを他...
-
キー入力について
-
プログラミングの問題です。大...
-
複数TBLのオブジェクトを1つの...
-
「main メソッドを持つクラスが...
-
JAの支部?地域の農協のカード...
-
えハミルトン路と全域木のちが...
-
CSV出力を画面から選択したデー...
-
ショートカットキーについて
-
list の空は [] ってあわらすのに
-
あんまりお料理しないのに台所...
-
質問です。 配列が100以上の場...
-
次のhtml・cssでspan内の文字を...
-
Jupyter notebookですわかりま...
-
Eclipse 動的プロジェクトで404...
-
下記問題の答えが"D"になる意味...
-
改行含むテキストの表示の仕方
-
JaneStyleのスレッドが見れなく...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
Java、配列の問題を教えて欲し...
-
VBAについて質問。別シートに転...
-
マクロのエラー
-
上書き保存されない
-
splitを使ってスペース位置で文...
-
VBA SubTotalで集計を出そうと...
-
VBAを教えていただきたいです。...
-
JavaScriptでキャッシュクリア...
-
Mathematicaで関数の最大値を求...
-
Caps Lockキーの解除
-
Excel2010の並べ替えで行の高さ...
-
リース初心者です 利子率の計...
-
Excelでカーソルが逆に動く
-
エクセル関数で {=TABLE(,セル...
-
エクセルで離れたセルを離れた...
-
プルダウンで選択すると隣のセ...
-
エクセルで複数の勤務時間ごと...
-
エクセルで作った書類に、パン...
-
60進法で複数セルの足し算、引...
-
VBA 条件が一致した場合の...
おすすめ情報