开发者社区> 游客3l7zwtdmj32km> 正文
阿里云
为了无法计算的价值
打开APP
阿里云APP内打开

输入流--InputStream

简介: 输入流--InputStream
+关注继续查看

根据数据流向不同分为:输入流和输出流。
输入流--InputStream
java.io.InputStream类是所有Java IO输入流的基类,它是以字节为单位的输出流。
类图展示

 ByteArrayInputStream:字节数组输入流在内存中创建一个字节数组缓冲区,从输入流读取的数据保存在该字节数组缓冲区中

FileInputStream:从文件读取数据

ObjectInputStream:反序列化流,将之前使用 ObjectOutputStream 序列化的原始数据恢复为对象,以流的方式读取对象。

PipedInputStream管道读取流

FilterInputStream]是过滤输出流

BufferedInputStream: 提供了缓冲功能。

DataInputStream: 允许应用程序以与机器无关方式从底层输入流中读取基本 Java 数据类型。应用程序可以使用数据输出流写入稍后由数据输入流读取的数据。

PipedInputStream: 允许以管道的方式来处理流。当连接到一个PipedOutputStream后,它会读取后者输出到管道的数据。

PushbackInputStream: 允许放回已经读取的数据。

SequenceInputStream: 能对多个inputstream进行顺序处理。

inputStream主要api方法

read:读取数据流字节,存储到缓冲区数组
public abstract int read()
public int read(byte[] b)
public int read(byte[] b,int off,int len)

available():获取数据流字节长度大小close():关闭并且释放流资源mark(int readlimit):设置输入流的当前位置reset():重新定位输入流的位置skip(long n):跳过并丢弃输入流的n个字节
FileInputStream。
FileInputStream读取文件。
/**

  • 读取filePath的文件,将文件中的数据按照行读取到String数组中
  • @param filePath 文件的路径
  • @return 文件中一行一行的数据

*/
public static String[] readToString(String filePath) {

File file = new File(filePath);
Long filelength = file.length(); // 获取文件长度
byte[] filecontent = new byte[filelength.intValue()];
try {
    FileInputStream in =new FileInputStream(file); in .read(filecontent); in .close();
} catch(FileNotFoundException e) {
    e.printStackTrace();
} catch(IOException e) {
    e.printStackTrace();
}

String[] fileContentArr = new String(filecontent).split("\r\n");

return fileContentArr; // 返回文件内容,默认编码

}

版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。

相关文章
认知IO流之 — InputStream
InputStream 是一个抽象类,这个抽象类是代表所有字节流输入的父类,应用程序需要定义一个InputStream 的子类,该子类需要提供一个返回下一个输入字节的方法。
15 0
认知IO流之 — InputStream
InputStream 是一个抽象类,这个抽象类是代表所有字节流输入的父类,应用程序需要定义一个InputStream 的子类,该子类需要提供一个返回下一个输入字节的方法。
22 0
认知IO流之 — InputStream
InputStream 是一个抽象类,这个抽象类是代表所有字节流输入的父类,应用程序需要定义一个InputStream 的子类,该子类需要提供一个返回下一个输入字节的方法。
13 0
IO流的字节输入输出流(InputStream,OutputStream)及文件复制
字节输出流与文件字节输出流 文件存储原理和记事本打开文件原理 OutputStream及FileOutputStream import java.io.FileOutputStream; import java.io.IOException; /* java.io.OutputStream:字节输出
49 0
【云图】如何设置微信里的全国实体店地图?
原文:【云图】如何设置微信里的全国实体店地图? 商家福利!如何提高微信公众平台的粉丝数?如何更好地与粉丝互动?如何为客户提供更好的网络服务? 答案是,为自己的微信公众平台,添加地图功能。有了地图,您的用户能更好更快地找到您实体店的地址,快捷地查询路线。
1345 0
139
文章
4
问答
文章排行榜
最热
最新
相关电子书
更多
低代码开发师(初级)实战教程
立即下载
阿里巴巴DevOps 最佳实践手册
立即下载
冬季实战营第三期:MySQL数据库进阶实战
立即下载