Java DataInputStream
精华
小牛编辑
101浏览
2023-03-14
1 什么是Java DataInputStream
Java DataInputStream 类允许应用程序以独立于机器的方式从输入流中读取原始数据。
Java应用程序通常使用数据输出流来写入数据,这些数据以后可以由数据输入流读取。
2 Java DataInputStream的语法
public class DataInputStream extends FilterInputStream implements DataInput
3 Java DataInputStream的方法
方法 | 描述 |
---|---|
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() | 用于读取一个输入字节,如果字节不为零,则返回true,如果字节为零,则返回false。 |
int skipBytes(int x) | 用于跳过输入流中x个字节的数据。 |
String readUTF() | 用于读取使用UTF-8格式编码的字符串。 |
static String readUTF(DataInput in) | 用于从流中读取以经修改的UTF-8格式编码的Unicode字符串的表示形式。然后将这个字符串作为字符串返回。 |
void readFully(byte[] b) | 用于从输入流中读取字节并将其存储到缓冲区数组中。 |
void readFully(byte[] b, int off, int len) | 用于从输入流中读取len个字节。 |
float readFloat() | 用于读取四个输入字节并返回一个浮点值。 |
long readLong() | 用于读取八个输入字节,并返回一个long值。 |
short readShort() | 用于读取两个输入字节并返回一个short值。 |
int readUnsignedByte() | 用于读取一个输入字节,将其零扩展以键入int类型,然后返回结果,因此其范围为0到255。 |
int readUnsignedShort() | 用于读取两个输入字节,并返回一个介于0到65535之间的int值。 |
4 Java DataInputStream的例子
在此示例中,我们从文件test.txt文件中读取数据。
package cn.xnip;
/**
* 小牛知识库网: https://www.xnip.cn
*/
/**
* Java DataInputStream的例子
*/
import java.io.*;
public class Demo {
public static void main(String[] args) throws IOException {
InputStream input = new FileInputStream("D:\\xnip\\test.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+"-");
}
}
}
test.txt:
JAVA
输出结果为:
J-A-V-A-