java io 包含两大基本抽象流类, 是java.io.InputStream, java.io.OutputStream
它们的子类有
BufferedInputStream
BufferedOutputStream
ByteArrayInputStream
ByteArrayOutputStream
DataInputStream
DataOutputStream
FileInputStream
FileOutputStream
FilterInputStream
FilterOutputStream
ObjectInputStream
ObjectOutputStream
PipedInputStream
PipedOutputStream
PrintStream
PushbackInputStream
SequenceInputStream
java.util.zip包
这个包含了四个输入流( 读入数据是压缩格式的, 返回是未压缩的格式)
四个输出流( 读入数据是未压缩格式的,写入的是压缩数据)
CheckedInputStream
CheckedOutputStream
DeflaterOutputStream
GZIPInputStream
GZIPOutputStream
InflaterInputStream
ZipInputStream
ZipOutputStream
java.util.jar包含了两个流用来读入jar文件
JarInputStream
JarOutputStream
java.security包 包含了俩个用于计算消息摘要的类
DigestInputStream
DigestOutputStream
The Java Cryptography Extension (JCE) 增加了两个类加密和加密
CipherInputStream
CipherOutputStream
还有一些类在sun包中, 它们是故意隐藏起来的(因为我们一般仅仅只需要用到java.io.InputStream or java.io.OutputStream)J
sun.net.TelnetInputStream
sun.net.TelnetOutputStream
有符号数转换成无符号数的公式:
int unsignedByte = signedByte >= 0 ? signedByte : 256 + signedByte;
128 --> -128
129 --> -127
130 --> -126
255 --> -1
256 --> 0
intvalue 装换成 bytevalue的公式
int byteValue;
int temp = intValue % 256;
if ( intValue < 0) {
byteValue = temp < -128 ? 256 + temp : temp;
}
else {
byteValue = temp > 127 ? temp - 256 : temp;
}