Java教程

Java DataInputStream

Java DataInputStream类允许应用程序以独立于机器的方式从输入流中读取原始数据。
Java应用程序通常使用数据输出流来写入数据,这些数据以后可以由数据输入流读取。

Java DataInputStream类声明

让我们看看java.io.DataInputStream类的声明:
public class DataInputStream extends FilterInputStream implements DataInput

Java DataInputStream类方法

方法 说明
int read(char[] b) 它用于从输入流中读取字节数。
int read(char[] b,int close,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格式编码的字符串。
void readFully(byte [] b) 它用于从输入流中读取字节并将其存储到缓冲区array中。
void readFully(byte [] b,int off,int len) 它用于从输入流中读取 len 个字节。

DataInputStream类的示例

在此示例中,我们正在从文件testout.txt文件中读取数据。
package com.lidihuo;
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
昵称: 邮箱:
Copyright © 2022 立地货 All Rights Reserved.
备案号:京ICP备14037608号-4