JavaのIOは、合計ストリーム

序文

JavaのIOストリームのない長い時間のために、忘れられている基礎の多くは、昨日は、コードの一部を書いた詳細の多くが忘れられました。タイムコードレビューでは、組織内のそのグループ、IOは混乱に関連したストリームクラスの誰かを見つけ、私はまだ総括するためにこの知識を入れて、記事を書きます。

図中のIOストリームクラス構造。

Javaのこの巨大なシステムのために、私たちはより良い学習コンテンツや学習の方向を把握するためにのみ、全体、全体としての知識・アーキテクチャの形成を把握するために、知識の一部を学ぶ必要があります。だから、ボーエンなどが先着、クラス構造に投稿された別のブログにアップしたいと。

私たちは、この絵はあまりクラスに混同してはいけません。実際には、このチャートから、構造が非常に明確であり、それは非常に簡単です。クラスたくさんあるが、我々はそれが全体のコールフローに精通し、いくつかの、我々は非常に満足して再生することができます使用しました。今、私は以下に示すように、私たちの共通のいくつかは、整理置きます:

私たちは、多くの場合、それを使用する観点から、バイトストリームと文字ストリームへのIOストリームは、以下の説明と概要は、文字とバイトストリームからのストリームを展開しています。

バイトストリーム

送信データがバイトのストリームの基本単位であり、送信時にバイトストリームを指します。

  • バイトの入力ストリーム
    バイトの入力ストリームの抽象基本クラスがあるInputStream私たちの最も一般的なサブクラスFileInputStreamBufferedInputStream二つのクラス。

    FileInputStream例えば、ビデオ画像を読み込むと、データはバイト単位でのファイルの操作を読んでいることを意味し、バイトのファイル入力ストリームと呼ばれ、ファイルを読み込むときに、この私たちは常に使用されます。

    BufferedInputStreamバイトストリーム入力バッファ、BufferedInputStream多くの場合、私たちが見るような、他の流れと一緒に使用されるプロセスの使用、BufferedInputStreamコンストラクタを:

    BufferedInputStream(InputStream in)

    BufferedInputStreamそれは自然の内部バッファアレイによって達成されます。例えば、の入力に対応する新たなストリームにBufferedInputStream我々が通過後、read()データの入力ストリームを読み取り、BufferedInputStreamそれがバッファへの入力データストリームはバッチを満たすであろう。我々は、入力データストリームの位置を読むまで、などと、バッファ内のデータが読み込まれた後たびに、入力データストリームは、再びバッファを記入します。することによりBufferedInputStream、我々は、処理速度と読み出しバイトストリームを増やすことができます。

  • 字节输出流
    字节输出流的抽象基类是OutputStream,我们最常用的子类是FileOutputStreamBufferedOutputStream这两个类。

    关于字节输出流这两个常用类就不细说了,和上面的字节输入流一样。

字符流

字符流是指在传输过程中,传输数据的最基本单位是字符的流。

  • 字符输入流
    字符输入流的抽象基类是Reader,我们最常用的子类是BufferedReaderFileReader这两个类。用法不多说了。

  • 字符输出流
    字符输出流的抽象基类是Writer,我们最常用的子类是BufferedWriterFileWriter这两个类。用法也不多说了。

为啥用法不多说呢?因为明白了整个的类结构,接下来的使用也就是API的使用,我们在使用过程中需要重点关注一下编码的问题就OK了。

总结

一篇简单的总结,连代码示例都木有!希望对大家有那么一点点的帮助!

2019年7月28日 于内蒙古呼和浩特。

おすすめ

転載: www.cnblogs.com/vipygd/p/11259942.html