RandomAccessFile是Java输入/输出流体系中功能最丰富的文件内容访问类,它提供了众多的方法来访问文件内容,它既可以读取文件内容,也可以向文件输出数据.与普通的输入/输出流不同的是,RandomAccessFile支持“随机访问”的方式,程序可以直接跳转到文件的任意地方来读写数据. 由于RandomAccessFile可以自由访问文件的任意位置,所以如果只需要访问文件部分内容,而不是把文件从头读到尾,使用RandomAccessFile将是更好的选择. RandomAccessFi…
关于使用处理流的优势,归纳起来就是两点:(1)对于开发人员来说,使用处理流进行输入/输出操作更简单:(2)使用处理流执行效率更高. 1.BufferedInputStream/BufferedOutputStream和BufferedReader/BufferedWriter Constructor Description BufferedInputStream​(InputStream in) Creates a BufferedInputStream and saves its argume…
Object流:直接将Object流写入或读出. TestObjectIO.java transient关键字(英文名:透明的,可以用来修饰成员变量(实例变量),transient修饰的成员变量(实例变量)在serializable序列化时不予考虑) serializable接口(可以被序列化,属于标记性接口,里面没有定义方法,打标机给编译器看,编译器看到了则认为该类可以被序列化) externalizable接口 package com.zyjhandsome.io; import java.…
DataInputStream和DataOutputStream分别继承字节流InputStream和OutputStream,它属于处理流,需要分别“套接”在InputStream和OutputStream类型的节点流上. DataInputStream和DataOutputStream提供了可以存取与机器无关的Java原始类型数据(如int,double等)的方法. DataInputStream和DataOutputStream的构造方法: DataInputStream(InputStr…
Java  输入/输出   反射 输入输出和反射 一.数据流的基本概念 流一般分为 ( Input Stream ) 和输出流 ( Output Stream ) 两类,但这种划分并不是绝对的.比如一个文件,当向其中写数 据时,它就是一个输出流:当从其中读取数据时,它就是一个输 入流.当然,键盘只是一个数人流,而屏幕则只是一个输出流. java 的标准数据流: 标准输入输出指在字符方式下 (如 DOS ) , 程序与系统进行交互的方式,分为三种: 标准输入 studin, 对象是键盘. 标准输出…
Java输入/输出(I/O)处理从源读取数据并将数据写入目标.通常,读取存储在文件中的数据或使用I/O将数据写入到文件中. java.io和java.nio包中包含处理输入/输出的Java类.java.io包具有执行I/O的类.java.nio包是新的I/O包. java.io包中的类都与基于流的I/O操作有关. 基于流的I/O使用流在数据源和Java程序之间传输字节数据. Java程序每次从一个字节读取或写入一个字节.这种执行I/O操作的方法很慢.流可以用于单向数据传输. 输入流只能将数据从数…
输入&输出&错误流 Linux中有三种标准输入输出,分别是STDIN,STDOUT,STDERR,对应的数字分别是0,1,2. 标准 数字 含义 STDIN 0 标准输入,默认从键盘读取信息 STDOUT 1 标准输出,默认将输出结果输出至终端 STDERR 2 标准错误,默认将输出错误输出至终端 STDOUT与STDERR都会默认显示在终端上, 数字1和2用于区分二者信息 重定向 为什么要重定向? 由上表可以看出,三种标准流都有默认的输入或输出设备.然而在实际工作中,输入信息或输出信息需…
一.字节数组流 字节数组流类能够操作内存中的字节数组,它的数据是一个字节数组.字节数组流类本身适配器设计模式,它把字节数组类型转为流类型使得程序能够对字节数组进行读写操作. 1.ByteArrayInputStream类 ByteArrayInputStream类从内存中的字节数组读入数据,它的数据是一个字节数组.ByteArrayInputStream流类本身适配器设计模式,它把字节数组类型转换为输入流类型使得程序能够对字节数组进行读操作. 下面是示例代码: public class Byte…
1.流的分类 (1)输入流和输出流(划分输入/输出流时是从程序运行所在内存的角度来考虑的) 输入流:只能从中读取数据,而不能向其写入数据. 输出流:只能向其写入数据,而不能从中读取数据. 输入流主要由InputStream和Reader作为基类,输出流主要由OutputStream和Writer作为基类.它们都是抽象基类,无法直接创建实例. (2)字节流和字符流 字节流和字符流的用法几乎完全一样,区别在于字节流和字符流操作的数据单元不同——字节流操作的数据单元是8-bit的字节,而字符流操作的数…
java.io中有四个重要的抽象类: InputStream(字节输入流) Reader(字符输入流) OutputStream(字节输出流) Writer(字符输出流) 其中,InputStream和Reader为子类提供read()方法,OutputStream和Writer为子类提供write()方法. 1.文件字节流:包含FileInputStream类和FileOutputStream类. 2.文件字符流:包含FileReader和FileWriter. 3.缓冲流:包含Buffere…