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

java 字節流和字符流區別

錢良釵2年前10瀏覽0評論

Java中的I/O操作非常重要,其中包括字節流和字符流兩種不同的I/O操作。字節流和字符流都是用于輸入和輸出數據,但是它們之間還有很多差異。

1.字節流和字符流的基于處理的不同。字節流是從InputStream和OutPutStream中派生的。而字符流派生自Reader和Writer接口。

字節流:InputStream in = new FileInputStream("test.txt");
OutputStream out = new FileOutputStream("test.txt", true);字符流:Reader in = new FileReader("test.txt");
Writer out = new FileWriter("test.txt", true);

2.字節流操作單元為字節byte,字符流操作單元為字符char。

字節流:while ((i = in.read()) != -1) {
buffer.write((byte)i);
}字符流:while((i = in.read()) != -1) {
buffer.write((char)i);
}

3.字節流能處理所有類型的數據。而字符流則只用于文本數據。

字節流:OutputStream out = new FileOutputStream("data.dat");
out.write(10);
out.write('A');
byte[] buffer = new byte[1024];
int length = in.read(buffer);字符流:Writer out = new FileWriter("data.txt");
out.write("Hello, World!");
char[] buffer = new char[1024];
int length = in.read(buffer);

4.字節流操作是在字節級別進行的,而字符流則在字符級別進行。

字節流:InputStream in = new FileInputStream("test.txt");
OutputStream out = new FileOutputStream("test.txt", true);字符流:Reader in = new FileReader("test.txt");
Writer out = new FileWriter("test.txt", true);

綜上所述,字節流和字符流都是I/O操作的兩種不同方式。我們可以根據不同的需要來選擇何時使用特定的流。