Java I/O系统之InputStream
1.InputStream类型
继承自InputStream的流都是用于向程序中输入数据,且数据的单位为字节(8bit);下图中深色为节点流,浅色为处理流。
2.InputStream的基本方法
InputStream的有以下几个的基本用法:
1) 读取一个字节并以整数的形式返回(0~255),如果返回-1已到输入流的末尾。
int read() throws IOException
2) 读取一系列字节并存储到一个数组buffer,返回实际读取的字节数,如果读取前已到输入的末尾返回-1.
int read(byte[] buffer) throws IOException
3) 读取length个字节,并存储一个字节数组buffer,从length位置开始,返回实际读取的字节数,如果读取前以到输入的末尾返回-1.
int read(byte[] buffer, int offset, int length) throws IOException
4) 关闭释放内存资源。
void close() throws IOException
5) 跳过n个字节不读,返回实际跳过的字节数。
long skip(long n) throws IOException
3.InputStream的例子
package com.owen.io;import java.io.FileInputStream;
import java.io.FileNotFoundException;
import java.io.IOException;/*** 读取文件 FileInputStream* @author OwenWilliam 2016-7-19* @since* @version v1.0.0**/
public class TestFileInputStream
{public static void main(String[] args){int b = 0;FileInputStream in = null;try{in = new FileInputStream("E:\\workspace\\Java\\IO\\src\\com\\owen\\io\\TestFileInputStream.java");} catch (FileNotFoundException e){System.out.println("找不到指定文件");System.exit(-1);}try{long num = 0;while ((b = in.read()) != -1){System.out.print((char)b);num++;}in.close();System.out.println();System.out.println("其读取了 " + num + " 个字节");}catch (IOException el){System.out.println("文件读取错误");System.exit(-1);}}}
Java I/O系统之InputStream相关推荐
- Java I/O系统学习系列三:I/O流的典型使用方式
尽管可以通过不同的方式组合IO流类,但我们可能也就只用到其中的几种组合.下面的例子可以作为典型的IO用法的基本参考.在这些示例中,异常处理都被简化为将异常传递给控制台,但是这只有在小型示例和工具中才适 ...
- Java I/O系统学习系列二:输入和输出
编程语言的I/O类库中常使用流这个抽象概念,它代表任何有能力产出数据的数据源对象或者是有能力接收数据的接收端对象."流"屏蔽了实际的I/O设备中处理数据的细节. 在这个系列的第一篇 ...
- Java I/O系统学习系列一:File和RandomAccessFile
I/O系统即输入/输出系统,对于一门程序语言来说,创建一个好的输入/输出系统并非易事.因为不仅存在各种I/O源端和想要与之通信的接收端(文件.控制台.网络链接等),而且还需要支持多种不同方式的通信(顺 ...
- Java中的系统类–属性,System.out.println()
System class in java is one of the core classes and I have never seen any java developer who doesn't ...
- Java基础知识(重点)总结(Java学习方法、系统学习路线)
参考:https://www.cnblogs.com/schiller-hu/p/10662429.html Java自学网:https://www.51zxw.net/list.aspx?cid=3 ...
- 【源码分析设计模式 5】Java I/O系统中的装饰器模式
一.基本介绍 动态地将责任附加到对象上.若要扩展功能,装饰者提供了比继承更有弹性的替代方案. 二.装饰器模式的结构 1.Component,抽象构件 Component是一个接口或者抽象类,是定义我们 ...
- java云服务器系统选择,java云服务器系统选择
java云服务器系统选择 内容精选 换一换 登录Windows操作系统弹性云服务器时,无法正常进入系统.自启动系统修复模式,但选择修复选项后报错,无法继续进行系统恢复.Windows文件已损坏.登录管 ...
- JAVA 多用户商城系统b2b2c-Spring Cloud常见问题与总结(一)
在使用Spring Cloud的过程中,难免会遇到一些问题.所以对Spring Cloud的常用问题做一些总结.需要JAVA Spring Cloud大型企业分布式微服务云构建的B2B2C电子商务平台 ...
- 零基础参加java培训的系统学习路线
零基础想要学习java技术,那么最好的选择就是参加java培训,进行系统的学习,以下就是小编为大家整理的零基础参加java培训的系统学习路线,希望能够帮助到正在学习java技术的零基础同学. 零基 ...
- java实验系统常用类,Java的常用系统类
Java的常用系统类Tag内容描述: 1.Java语言与JBuilder应用初步 第六章 常用的Java系统类,本章要点,字符串类 数值(Number)类及其子类 数组类 集合类 Object类,字符 ...
最新文章
- C++ primer第五版随笔--2015年1月6日
- 使用PHP+Redis实现延迟任务,实现自动取消订单功能
- boost::gil::packed_channel_value用法的测试程序
- HDU - 3804 Query on a tree(树链剖分+线段树+离线处理)
- RDD, DataFrame or Dataset
- 「Vueconf」探索 Vue3 中 的 JSX
- Lottie 站在巨人的肩膀上实现 Android 酷炫动画效果
- 使用 Jackson 树连接线形状
- WDK中出现的特殊代码
- odis工程师使用方法_傅里叶红外光谱仪常见故障维修及排除方法,你了解有多少种呢?...
- 来吧,自己动手撸一个分布式ID生成器组件
- Python安装时import matplotlib.pyplot as plt报错
- JavaWeb学习笔记7--JSP脚本元素、指令元素、动作元素
- C语言阿拉伯数字转大写汉字,将阿拉伯数字转大写汉字程序的类
- mt6573的DSI 接口
- Oracle 、SqlServer 根据日期逐日、逐月递增累加、逐行累加
- 「随笔」前端面试 | 2022年前端面试基础必备
- win7虚拟机不安装VMware Tools实现传输文件
- EXCEL常用操作-----自动编号
- 树莓派耳机接口有电流声、杂音