java inputstream子类_Java InputStream 类

Java InputStream 类

在本教程中,我们将通过一个示例来学习Java InputStream类及其方法。

java.io包的InputStream类是一个抽象超类,它表示字节的输入流。

由于InputStream是抽象类,因此它本身没有用。但是,其子类可用于读取数据。

InputStream的子类

为了使用的InputStream功能,我们可以使用其子类。它的子类有:

5f4e16a4c93ee3099be04fcc93aa8425.png

在下一个教程中,我们将学习所有这些子类。

创建一个InputStream

为了创建InputStream,我们必须首先导入java.io.InputStream包。导入包后,就可以创建输入流。

// 创建一个InputStream

InputStream object1 = new FileInputStream();

在这里,我们使用FileInputStream创建了一个输入流。这是因为InputStream是一个抽象类。因此,我们不能创建InputStream的对象。

注意:我们还可以从InputStream的其他子类创建输入流。

InputStream的方法

InputStream类提供了由其子类实现的不同方法。以下是一些常用的方法read() - 从输入流中读取一个字节的数据

read(byte[] array) - 从流中读取字节并存储在指定的数组中

available() - 返回输入流中可用的字节数

mark() - 标记输入流中数据所在的位置

reset() -将控制点返回到流中设置标记的点

markSupported()- 检查流中是否支持mark()和reset()方法

skips() - 跳过和丢弃输入流中的指定字节数

close() - 关闭输入流

示例:InputStream使用FileInputStream

下面是使用FileInputStream类实现InputStream的方法。

假设我们有一个名为input.txt的文件,其中包含以下内容。

示例

这是文件中的一行文本。

让我们尝试使用FileInputStream (InputStream的子类)来读取这个文件。

示例

import java.io.FileInputStream;

import java.io.InputStream;

public class Main {

public static void main(String args[]) {

byte[] array = new byte[100];

try {

InputStream input = new FileInputStream("input.txt");

System.out.println("文件中的可用字节: " + input.available());

//从输入流中读取字节

input.read(array);

System.out.println("从文件读取的数据: ");

//将字节数组转换为字符串

String data = new String(array);

System.out.println(data);

//关闭输入流

input.close();

}

catch (Exception e) {

e.getStackTrace();

}

}

}

输出结果

示例

文件中的可用字节: 35

从文件读取的数据:

这是文件中的一行文本。

在上面的示例中,我们使用FileInputStream类创建了输入流。输入流与文件input.txt链接。

示例

InputStream input = new FileInputStream("input.txt");

为了从input.txt文件中读取数据,我们实现了这两种方法。

示例

input.read(array);      //从输入流中读取数据

input.close();             //关闭输入流

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值