首页 > 基础资料 博客日记
Java中DataInputStream类介绍和使用
2023-05-03 12:47:54基础资料围观1178次
Java中的DataInputStream类实现了数据输入的功能。它是InputStream类的子类,可以从一个输入流中读取基本Java数据类型。
DataInputStream类定义了许多读取基本数据类型的方法,例如readBoolean()readByte()、readChar()、readDouble()、readFloat()、readInt()、readLong()和readShort()等。此外,它还提供了一些其他的读取方法,readFully(byte[] b)用于读取指定长度的字节数组,UTF()用于读取字符串等。
在使用DataInputStream类时,通常需要将其与另一个输入流(如FileInputStream)配合使用。首先创建一个InputStream对象(如FileInputStream然后将其传递给DataInputStream的构造函数中。
使用DataInputStream类需要注意其所读取的数据格式必须与所写入的数据格式相同。因此,在实际使用中需要特别注意数据格式的保持一致性。
下面是一个基本的DataInputStream使用示例,它从一个文件中读取基本数据类型并将其打印到控制台上:
import java.io.*; public class DataInputStreamDemo { public static void main(String args[]) throws IOException { FileInputStream fileInputStream = null; DataInputStream dataInputStream = null; try { // 创建文件输入流 fileInputStream = new FileInputStream("data.txt"); // 创建数据输入流 dataInputStream = new DataInputStream(fileInputStream); // 读取数据 int intValue = dataInputStream.readInt(); float floatValue = dataInputStream.readFloat(); boolean booleanValue = dataInputStream.readBoolean(); // 打印数据 System.out.println("Int value: " + intValue); System.out.println("Float Value: " + floatValue); System.out.println("Boolean Value: " + booleanValue); } catch (IOException e) { e.printStackTrace(); } finally { if (fileInputStream != null) { fileInputStream.close(); } if (dataInputStream != null) { dataInputStream.close(); } } } }
这个示例首先创建了一个文件输入流,然后将其传递给一个DataInputStream对象,接着使用DataInputStream对象的readInt()方法、readFloat()方法和readBoolean()方法从文件中读取数据。最后将读取的数据打印到控制台上。
需要注意的是,在使用DataInputStream读取数据时必须保证读取的数据类型与数据文件中数据类型相同,否则可能会导致读取到错误的数据值或者抛出异常。
标签:
相关文章
最新发布
- springboot~3.x项目中使用集成测试
- Java测试类、工具类与JavaBean对比解析
- SpringBoot-日志
- springboot~http2的支持
- 解疑释惑 - 日志体系之 slf4j + logback 组合(一)
- Web server failed to start. Port 8080 was already in use. 端口被占用
- Springboot 项目配置多数据源
- 伙伴匹配系统(移动端 H5 网站(APP 风格)基于Spring Boot 后端 + Vue3 - 05
- 剑指offer-23、搜索⼆叉树的后序遍历序列
- 一个表示金额的数字是 100000000L,这是多少米?