Java之输入流InputStream及代码精析

365bet网上平台 📅 2025-10-16 04:25:35 👤 admin 👀 5360 ❤️ 833
Java之输入流InputStream及代码精析

文章目录

一:InputStream初识二:常见方法三:常见子类四:案例实践

一:InputStream初识

是输入字节流的父类,它是一个抽象类(一般用他的子类)在Java中,InputStream是所有字节输入流的超类。它定义了字节流输入的基本操作,如读取字节、跳过字节和标记/重置流等。通过InputStream,我们可以从文件、网络连接或其他数据源中读取字节数据。

二:常见方法

int read()

从输入流中读取单个字节,返回0到255范围内的int字节值, 字节数据可直接转换为int类型如果已经到达流末尾而没有可用的字节,则返回-1 int read(byte[] b):

从输入流中读取最多b.length个字节的数据到字节数组b中,并返回实际读取的字节数。如果因为已经到达流末尾而没有更多的数据,则返回-1。 int read(byte[] b, int off, int len):

从输入流中读取最多len个字节的数据到字节数组b中,从off指定的偏移量开始存储,并返回实际读取的字节数。如果因为已经到达流末尾而没有更多的数据,则返回-1。 long skip(long n):

跳过输入流中的n个字节。如果实际跳过的字节数小于n,则可能是因为已经到达流的末尾。此方法返回实际跳过的字节数。 int available():返回可以从此输入流中读取的字节数的估计值。void close():关闭此输入流并释放与该流关联的系统资源。

三:常见子类

FileInputStream

抽象类InputStream用来具体实现类的创建对象, 文件字节输入流, 对文件数据以字节的形式进行读取操作

//常用构造函数,传入文件所在地址

public FileInputStream(String name) throws FileNotFoundException

//常用构造函数,传入文件对象

public FileInputStream(File file) throws FileNotFoundException

四:案例实践

package chapter11;

import java.io.*;

public class InputStreamDemo {

public static void main(String[] args) throws IOException {

String dir = "/Users/mz/IdeaProjects/xdclass-count/src/chapter11";

String name = "abc.txt";

File file = new File(dir,name);

//创建一个文件输入流,用于读取文件内容。

InputStream inputStream =new FileInputStream(file);

//创建一个 1024 字节的缓冲区数组。

byte[] bufffer = new byte[1024];

//初始化读取字节数的变量。

int bytesRead = 0;

//inputStream.read(bufffer) 读取数据到 bufffer,并返回实际读取的字节数。

while((bytesRead = inputStream.read(bufffer)) != -1){

//读取到的数据,打印到控制台

//将 bufffer 中的字节(从索引 0 开始,长度为 bytesRead)转换为字符串。

String str = new String(bufffer,0,bytesRead);

System.out.println(str);

};

inputStream.close();

}

}

🍵 相关养生推荐

云点播是什么意思 云点播的优势和应用场景
365bet网上平台

云点播是什么意思 云点播的优势和应用场景

📅 09-26 👀 9240
手机拒接来电怎么设置
必发365app官网

手机拒接来电怎么设置

📅 08-22 👀 4224
免root手机给电脑装系统的详细方法教程[多图]
必发365app官网

免root手机给电脑装系统的详细方法教程[多图]

📅 07-04 👀 7020
常见的几种通信总线概述
365bet网上平台

常见的几种通信总线概述

📅 07-17 👀 9558
明日之后水果怎么得 水果获取方法
365bet网上娱乐场

明日之后水果怎么得 水果获取方法

📅 09-02 👀 5486