下面哪个类能够读取Java原始类型的数据 A InputStream B OutputStream C DataInputStream D PipedInputStream
时间: 2023-10-25 18:28:41 浏览: 34
C DataInputStream 能够读取Java原始类型的数据。DataInputStream 是 InputStream 的子类,它提供了一系列读取 Java 原始类型数据的方法,如 readBoolean()、readInt()、readFloat() 等,它们可以用于从底层输入流中读取数据并将其转换为 Java 原始类型的值。因此,选项 C 是正确的,选项 A、B 和 D 都不能读取 Java 原始类型的数据。
相关问题
下列选项中,能够读取内部存储文件中数据的类是()。 A.FilelnputStream B.InputStream C.FileOutputStream D.OutputStream
正确的选项是A。`FileInputStream` 类是 Java 中用于读取文件数据的类之一,可以用于读取 Android 应用程序的内部存储中的文件数据。而 `InputStream` 和 `OutputStream` 类是抽象类,不能直接用于文件读写操作;`FileOutputStream` 类则是用于写入文件数据的类。因此,选项A描述正确,而B、C、D都是错误的。
把InputStream或者OutputStream封装为DataInputStream和DataOutputStream。
DataInputStream和DataOutputStream是Java I/O库中的两个类,它们提供了对基本数据类型的高级操作。DataInputStream和DataOutputStream都是装饰器模式的应用,可以将底层的InputStream和OutputStream封装成支持读写Java基本数据类型的流。
下面是一个示例代码,演示如何使用DataInputStream和DataOutputStream:
```java
import java.io.*;
public class DataStreamExample {
public static void main(String[] args) throws IOException {
// 创建一个文件并写入基本数据类型
FileOutputStream fos = new FileOutputStream("data.bin");
DataOutputStream dos = new DataOutputStream(fos);
dos.writeInt(12345);
dos.writeDouble(3.1415926);
dos.writeBoolean(true);
dos.writeUTF("Hello, World!");
dos.close();
// 从文件中读取基本数据类型
FileInputStream fis = new FileInputStream("data.bin");
DataInputStream dis = new DataInputStream(fis);
int a = dis.readInt();
double b = dis.readDouble();
boolean c = dis.readBoolean();
String d = dis.readUTF();
dis.close();
// 输出读取到的数据
System.out.println(a);
System.out.println(b);
System.out.println(c);
System.out.println(d);
}
}
```
在这个示例中,我们创建了一个名为"data.bin"的文件,并使用DataOutputStream写入了一个整数、一个双精度浮点数、一个布尔值和一个字符串。然后我们使用DataInputStream从文件中读取这些基本数据类型,并将它们输出到控制台上。
需要注意的是,DataInputStream和DataOutputStream的使用需要按照顺序读写基本数据类型,并且读写时需要使用相应的读写方法,例如readInt()、readDouble()、readBoolean()和readUTF()等。如果读写的顺序或读写方法不匹配,将会导致数据读取出错。