String
readLine
()
已过时。
该方法无法将字节正确转换为字符。从 JDK 1.1 开始,读取文本行的首选方法是使用
BufferedReader.readLine()
方法。使用
DataInputStream
类读取文本行的程序可以改为使用
BufferedReader
类,只要将以下形式的代码:
DataInputStream d = new DataInputStream(in);
BufferedReader d
= new BufferedReader(new InputStreamReader(in));
static
String
readUTF
(
DataInput
in)
从流
in
中读取用
UTF-8 修改版
格式编码的 Unicode 字符格式的字符串;然后以
String
形式返回此字符串。
skipBytes
(int n)
参见
DataInput
的
skipBytes
方法的常规协定。
从包含的输入流中读取一定数量的字节,并将它们存储到缓冲区数组
b
中。以整数形式返回实际读取的字节数。在输入数据可用、检测到文件末尾 (end of file) 或抛出异常之前,此方法将一直阻塞。
如果
b
为 null,则抛出
NullPointerException
。如果
b
的长度为 0,则不读取字节并返回
0
;否则,尝试读取至少一个字节。如果因为流位于文件末尾而没有字节可用,则返回值
-1
;否则至少读取一个字节并将其存储到
b
中。
将读取的第一个字节存储到元素
b[0]
中,将下一个字节存储到
b[1]
中,依此类推。读取的字节数至多等于
b
的长度。设
k
为实际读取的字节数;这些字节将存储在从
b[0]
到
b[k-1]
的元素中,
b[k]
到
b[b.length-1]
的元素不受影响。
read(b)
方法与以下方法的效果相同:
read(b, 0, b.length)
len
个,也可能为零。以整数形式返回实际读取的字节数。
在输入数据可用、检测到文件末尾或抛出异常之前,此方法将阻塞。
如果
len
为零,则不读取任何字节并返回
0
;否则,尝试读取至少一个字节。如果因为流位于文件未尾而没有字节可用,则返回值
-1
;否则,至少读取一个字节并将其存储到
b
中。
将读取的第一个字节存储到元素
b[off]
中,将下一个字节存储到
b[off+1]
中,依此类推。读取的字节数至多等于
len
。设
k
为实际读取的字节数;这些字节将存储在
b[off]
到
b[off+
k
-1]
的元素中,
b[off+
k
]
到
b[off+len-1]
的元素不受影响。
在所有情况下,
b[0]
到
b[off]
的元素和
b[off+len]
到
b[b.length-1]
的元素都不受影响。
该方法无法将字节正确转换为字符。从 JDK 1.1 开始,读取文本行的首选方法是使用
BufferedReader.readLine()
方法。使用
DataInputStream
类读取文本行的程序可以改为使用
BufferedReader
类,只要将以下形式的代码:
DataInputStream d = new DataInputStream(in);
BufferedReader d
= new BufferedReader(new InputStreamReader(in));