Java教程-Java DataInputStream类

Java DataInputStream类
Java DataInputStream类允许应用程序以与机器无关的方式从输入流中读取基本数据类型。
Java应用程序通常使用数据输出流来写入数据,这些数据可以由数据输入流后续读取。
Java DataInputStream类声明
让我们看一下java.io.DataInputStream类的声明:
public class DataInputStream extends FilterInputStream implements DataInput
Java DataInputStream类的方法
Method | Description |
---|---|
int read(byte[] b) | 它用于从输入流中读取字节数。 |
int read(byte[] b, int off, int len) | 它用于从输入流中读取len个字节的数据。 |
int readInt() | 它用于读取输入字节并返回一个 int 值。 |
byte readByte() | 它用于读取并返回一个输入字节。 |
char readChar() | 它用于读取两个输入字节并返回一个 char 值。 |
double readDouble() | 它用于读取八个输入字节并返回一个双精度值。 |
boolean readBoolean() | 它用于读取一个输入字节,如果字节不为零则返回真,如果字节为零则返回假。 |
int skipBytes(int x) | 它用于从输入流中跳过 x 字节的数据。 |
String readUTF() | 它用于读取使用 UTF-8 格式编码的字符串。 |
void readFully(byte[] b) | 它用于从输入流中读取字节并将它们存储到缓冲区数组中。 |
void readFully(byte[] b, int off, int len) | 它用于从输入流中读取len 个字节。 |
Java DataInputStream类的示例
在此示例中,我们从文件testout.txt中读取数据。
package com.javatpoint;
import java.io.*;
public class DataStreamExample {
public static void main(String[] args) throws IOException {
InputStream input = new FileInputStream("D:\\testout.txt");
DataInputStream inst = new DataInputStream(input);
int count = input.available();
byte[] ary = new byte[count];
inst.read(ary);
for (byte bt : ary) {
char k = (char) bt;
System.out.print(k+"-");
}
}
}
在此示例中,我们假设您在"testout.txt"文件中有以下数据:
JAVA
输出:
J-A-V-A