色婷婷狠狠18禁久久YY,CHINESE性内射高清国产,国产女人18毛片水真多1,国产AV在线观看

java的字符流和字節(jié)流詳解

鄭雨菲1年前6瀏覽0評論

在Java中,數(shù)據(jù)的傳輸方式有兩種:字符流和字節(jié)流。

字符流

字符流以字符為單位進行傳輸,每個字符占用兩個字節(jié)。Java字符流包括Reader和Writer兩個抽象類及其子類。

// 示例:使用字符流讀取文件內(nèi)容
File file = new File("test.txt");
try (Reader reader = new FileReader(file)) {
char[] buf = new char[1024];
int len = -1;
while ((len = reader.read(buf)) != -1) {
System.out.println(new String(buf, 0, len));
}
} catch (IOException e) {
e.printStackTrace();
}

在示例中,我們使用了FileReader類讀取文件內(nèi)容,并通過char數(shù)組進行緩沖處理。

字節(jié)流

字節(jié)流以字節(jié)為單位進行傳輸,一次讀取一個字節(jié)。Java字節(jié)流包括InputStream和OutputStream兩個抽象類及其子類。

// 示例:使用字節(jié)流寫入文件內(nèi)容
File file = new File("test.txt");
try (OutputStream out = new FileOutputStream(file)) {
String s = "Hello, Java!";
out.write(s.getBytes());
} catch (IOException e) {
e.printStackTrace();
}

在示例中,我們使用了FileOutputStream類將字符串寫入文件,并通過getBytes()方法將字符串轉(zhuǎn)換為字節(jié)數(shù)組。

總結(jié)

字符流和字節(jié)流各有各的長處,開發(fā)者應(yīng)根據(jù)具體的場景來選擇使用哪種方式。