av手机免费在线观看,国产女人在线视频,国产xxxx免费,捆绑调教一二三区,97影院最新理论片,色之久久综合,国产精品日韩欧美一区二区三区

java語(yǔ)言

java字節(jié)流字符流知識(shí)點(diǎn)

時(shí)間:2025-05-26 00:59:56 java語(yǔ)言 我要投稿
  • 相關(guān)推薦

java字節(jié)流字符流知識(shí)點(diǎn)

  對(duì)于UTF-8,英文是1個(gè),中文是3個(gè)

java字節(jié)流字符流知識(shí)點(diǎn)

  對(duì)于Unicode,英文中文都是2個(gè)

  Java的流操作分為字節(jié)流和字符流兩種。

  1、字節(jié)流

  所有的讀操作都繼承自一個(gè)公共超類(lèi)java.io.InputStream類(lèi)。

  所有的寫(xiě)操作都繼承自一個(gè)公共超類(lèi)java.io.OutputStream類(lèi)。

  InputStream和OutputStream都是抽象類(lèi)。

  InputStream有6個(gè)低級(jí)輸入流:

  低級(jí)流

  流的用途

  ByteArrayInputStream

  從內(nèi)存數(shù)組中讀取數(shù)據(jù)字節(jié)

  FileInputStream

  從本地文件系統(tǒng)中讀取數(shù)據(jù)字節(jié)

  PipedInputStream

  從線程管道中讀取數(shù)據(jù)字節(jié)

  StringBufferInputStream

  從字符串中讀取數(shù)據(jù)字節(jié)

  SequenceInputStream

  從兩個(gè)或多個(gè)低級(jí)流中讀取數(shù)據(jù)字節(jié),當(dāng)?shù)竭_(dá)流的末尾時(shí)從一個(gè)流轉(zhuǎn)到另一個(gè)流

  System.in

  從用戶控制臺(tái)讀取數(shù)據(jù)字節(jié)

  InputStream還有一個(gè)子類(lèi):過(guò)濾器流java.io.FilterInputStream。過(guò)濾器流即能把基本流包裹起來(lái),提供更多方便的用法。

  FilterInputStream 類(lèi)的構(gòu)造方法為FilterInputStream(InputStream),在指定的輸入流之上,創(chuàng)建一個(gè)輸入流過(guò)濾器。

  FilterInputStream的常用的子類(lèi)如下:

  過(guò)濾器輸入流

  流的用途

  BufferedInputStream

  緩沖區(qū)對(duì)數(shù)據(jù)的訪問(wèn),以提高效率

  DataInputStream

  從輸入流中讀取基本數(shù)據(jù)類(lèi)型,如int、float、double或者甚至一行文本

  LineNumberInputStream

  在翻譯行結(jié)束符的基礎(chǔ)上,維護(hù)一個(gè)計(jì)數(shù)器,該計(jì)數(shù)器表明正在讀取的是哪一行。

  PushbackInputStream

  允許把數(shù)據(jù)字節(jié)向后推到流的首部

  OutputStream(略)

  OutputStream的結(jié)構(gòu)基本和InputStream是一樣的。

  2、字符流

  注:是在jdk1.1里面引進(jìn)的,上面字節(jié)流是在jdk1.0引進(jìn)的。當(dāng)用于處理文本數(shù)據(jù)時(shí),選擇字符流比字節(jié)流更好。但對(duì)只出路基本數(shù)據(jù)類(lèi)型的開(kāi)發(fā)者,可以繼續(xù)使用字節(jié)流。

  所有的讀操作都繼承自一個(gè)公共超類(lèi)java.io.Reader類(lèi)。

  所有的寫(xiě)操作都繼承自一個(gè)公共超類(lèi)java.io.Writer類(lèi)。

  同樣Reader和Writer也是抽象類(lèi)。

  Reader的常用的子類(lèi)如下:

  低級(jí)讀取器

  流的用途

  CharArrayReader

  從字符數(shù)組中讀取數(shù)據(jù)

  InputStreamReader

  FileReader(InputStreamReader的子類(lèi))

  從本地文件系統(tǒng)中讀取字符序列

  StringReader

  從字符串中讀取字符序列

  PipedReader

  從線程管道中讀取字符序列

  InputStreamReader重點(diǎn)講解:

  InputStreamReader是從輸入流中讀取數(shù)據(jù),連接輸入流于讀取器。如:

  new InputStreamReader(System.in)

  構(gòu)造方法:

  InputStreamReader(InputStream)

  用缺省的字符編碼方式,創(chuàng)建一個(gè) InputStreamReader。

  InputStreamReader(InputStream, String)

  用已命名的字符編碼方式,創(chuàng)建一個(gè) InputStreamReader。

  常用的過(guò)濾器讀取器:

  過(guò)濾器讀取器

  流的用途

  BufferedReader

  緩沖數(shù)據(jù)的訪問(wèn),以提高效率

  LineNumberReader(BufferedReader的子類(lèi))

  維護(hù)一個(gè)計(jì)數(shù)器,該計(jì)數(shù)器表明正在讀取的是哪一行。

  FilterReader(抽象類(lèi))

  提供一個(gè)類(lèi)創(chuàng)建過(guò)濾器時(shí)可以擴(kuò)展這個(gè)類(lèi)

  PushbackReader(FilterReader的子類(lèi))

  允許把文本數(shù)據(jù)推回到讀取器的流中

  這些過(guò)濾器讀取器都可以傳入一個(gè)Reader作為構(gòu)造方法的參數(shù)。

  Writer(略)

  Writer的結(jié)構(gòu)基本和Reader是一樣的。

  字節(jié)流是最基本的,字符流是為了處理字符而提出來(lái)的。

  new BufferedReader

  (new InputStreamReader(client.getInputStream()));解釋?zhuān)?/p>

  client.getInputStream()是字節(jié)流;

  InputStreamReader把字節(jié)流轉(zhuǎn)換成字符流;

  BufferedReader緩沖字符流,使得能夠使用readline()等方法,直接讀取一行。

【java字節(jié)流字符流知識(shí)點(diǎn)】相關(guān)文章:

什么是java字節(jié)流字符流10-30

java字節(jié)流字符流是什么09-04

java類(lèi)型的字符轉(zhuǎn)換的方法09-09

Java字符串(String)09-21

關(guān)于Java字符串問(wèn)題09-09

Java中日期與字符串的處理08-16

關(guān)于基于Java字符串==與 equals07-28

java常用字符串09-01

java輸入數(shù)據(jù)流的方法08-19