Java IO (1) - InputStream 前言 JavaIO一共包括两种,一种是stream,一种是reader/writer,每种又包括in/out,所以一共是四种包.Java 流在处理上分为字符流和字节流.字符流处理的单元为 2 个字节的 Unicode 字符,分别操作字符.字符数组或字符串,而字节流处理单元为 1 个字节,操作字节和字节数组. Java 内用 Unicode 编码存储字符,字符流处理类负责将外部的其他编码的字符流和 java 内 Unicode 字符流之间的转换.…
Java IO 过滤流 BufferedInput/OutputStream @author ixenos 概念 BufferedInput/OutputStream是实现缓存的过滤流,他们分别是FilterInput/OutputStream的子类. BufferedInputStream工作流程 stream-->buf--read buf-->I 1.当一个BufferedInputStream被创建时,一个内部的缓冲区 byte[] buf = new byte[size] 也被建立,…
Java IO 节点流 FileInput/OutputStream @author ixenos 节点流之 文件流 文件读写是最常见的I/O操作,通过文件流来连接磁盘文件,读写文件内容 1.文件的读写工作流程: 1)打开文件输入流或输出流 FileInputStream实现读文件,调用FileInputStream的构造器可以打开一个文件输入流: 1 public FileInputStream(String fileName) throws FileNotFoundException //指…
Java IO 节点流 ByteArrayInput/OutputStream @author ixenos ByteArrayInputStream 包含一个内部缓冲区(字节数组byte[]),该缓冲区包含从流中读取的字节. 关闭 ByteArrayInputStream 无效.此类中的方法在关闭此流后仍可被调用,而不会产生任何 IOException.  #Constructors ByteArrayInputStream(byte[] buf) //使用创建者预设的buf作为其缓冲区数组,…
转载请注明源出处:http://www.cnblogs.com/lighten/p/6964702.html 1.前言 计算机的IO操作一直都是比较重要的一环,IO顾名思义,就是输入输出流.不管是磁盘IO还是网络IO,数据流转就离不开IO,理解Java的IO操作类很重要,本文介绍IO的抽象父类InputStream和OutputStream,这是Java的IO操作基础,理解完抽象类,对于其它的IO流也有很大的帮助. 流都实现了Closeable接口,也就是都需要关闭.输出流额外实现了一个Flus…
Writer      :BYSocket(泥沙砖瓦浆木匠) 微         博:BYSocket 豆         瓣:BYSocket FaceBook:BYSocket Twitter    :BYSocket 一.InputStream InputStream是一个抽象类,即表示所有字节输入流实现类的基类.它的作用就是抽象地表示所有从不同数据源产生输入的类,例如常见的FileInputStream.FilterInputStream等.那些数据源呢?比如: 1) 字节数组(不代表S…
*/ .hljs { display: block; overflow-x: auto; padding: 0.5em; color: #333; background: #f8f8f8; } .hljs-comment, .hljs-template_comment, .diff .hljs-header, .hljs-javadoc { color: #998; font-style: italic; } .hljs-keyword, .css .rule .hljs-keyword, .h…
对象序列化 对象序列化又叫对象的持久化,对象的串行化(或反串行化) 当使用Serializable接口实现序列化操作时,如果一个对象中的某个属性不希望被序列化,则可以使用transient关键字进行声明. static修饰的静态属性也不能被序列化,序列化的只是堆内存中对象的属性. ANY-ACCESS-MODIFIER(任意的访问修饰符) static final long serialVersionUID = 42L; 语句的作用:给类定义一个固定标识,为了序列化方便,新的类还能操作曾经被序列…
在上一节,介绍了字节流的基本使用,本节介绍一下字符流的使用 Reader: public abstract class Reader implements Readable, Closeable { protected Object lock; private static final int maxSkipBufferSize = 8192; private char[] skipBuffer = null; protected Reader() { this.lock = this; } p…
InputStream InputStream是java中的输入流,下面基于java8来分析下InputStream源码 一.类定义 public abstract class InputStream implements Closeable Closeable接口定义了close()方法,流在使用完之后需要关闭,并且放在finally块中操作比较好. 二.变量 // 该变量用于确定在skip方法中使用的最大缓存数组大小. private static final int MAX_SKIP_BU…