java io读书笔记(6) Writing Arrays of Bytes

时间:2025-03-12 15:04:01

显而易见,一次性写出一堆数据,要比一个byte一个byte的写,快多了,因此,outputstream,给出了2个增强型的write:

public void write(byte[] data) throws IOException

public void write(byte[] data, int offset, int length) throws IOException

这两个方法,可以参看上一个单元的outputstream类的源代码:

import java.util.*;
import java.io.*; public class TestList { public static void main(String[] args) { String s = "How are streams treating you?";
byte[] data = s.getBytes( );
try{
System.out.write(data);
}catch (IOException ex) {
System.err.println(ex);
} }
}

有利就有弊,当你一次性想写入太多字符的时候,必然会碰到性能问题。根据写入目标不同,我们需要选择不同大小的字符数量:

比如写入文件,那最好是块的整数倍,比如:1024,2048,3096等等。

比如通过网络传输数据,往往要求小于128或者256bytes。