常用的I/O流类型

1.I/O流类型基础.(类中方法和子类查看java spring API)

抽象类java.io.InputStream:是所有字节输入流的父类,定义了以字节为基本单位读取数据的基本方法

抽象类java.io.OutputStream:所有字节输出流的类型的父类

抽象类java.io.Reader: 读取输入流类型的父类

抽象类java.io.Writer:写入输出流的父类

2.常用输入/输出的类型(效率不断提高)

2.1 FileInputStream/FileOutputStream

java.io.FileInputStream :一般是从本地磁盘读取字节数据。一般使用方法是:先创建FileInputStream 对象关联到要读取的文件,然后用read()方法读取字节数据,然后再进行别的操作。如果目标文件不存在,则报错。

java.io.FileOutputStream :将字节数据写到指定文件。如果文件存在则写到指定文件,如果目标文件不存在则自动创建该文件,如果目标文件所在目录也不存在,则报错

2.2 java.io.FileWriter/java.io.FileReader

FileReader:以字符为基本单读取文本文件(保存了的文本总是按照本地操作系统进行了默认编码所以读取时不会乱码)

FileWriter:将字符数据写入到文本文件(文本进行保存时以字节进行保存,解析时可能出现乱码现象)

2.3 java.io.BufferedReader/java.io.BufferedWriter

BufferedReader:是从字符输入流中读取文本,将多个字符存入缓存提供读取字符、数据或行的有效方法。

BufferedWriter:将字符输出流缓冲后写出。(缓冲区容量可以在构造方法中指定)

2.4java.io.InputStreamReader/java.io.OutputStreamWriter

InputStreamReader和OutputStreamWriter都是把字节流转为了字符流,但是为了高效常会用BufferedReader和BufferedWriter进行封装,一般实际中都用器子类FileWriter和FileReader(除键盘操作)

2.5 PrintStream和PrintWriter 都是输出打印的类

PrintStream只能封装OutputStream类型的字节输出流

PrintWriter 既可封装OutputStream类型的字节输出流,也能封装Writer类型的字符输出流

2.6java.io.DataInpuStream/java.io.DataOutputStream(注意其读取的文件类型是.data文件并不是文本文件

DataInpuStream:能直接读取java基本类型和String类型的数据

DataOutputStream:能直接写入java基本类型和String类型的数据

2.7java.io.CharArrayReader/java.io.CharArrayWriter

3对象序列化

Java de I/O主要是对字节或字符经常读写操作。或者对可以处理基本的数据类型,但是都不能处理String以外的引用类型,“序列化”是将并行数据转换为串行数据的处理过程,而“对象序列化”是将对象的状态数据以字节流的形式进行处理,从而被I/O流操作

时间: 2024-10-25 04:12:03

常用的I/O流类型的相关文章

1.java.io包中定义了多个流类型来实现输入和输出功能,

1.java.io包中定义了多个流类型来实现输入和输出功能,可以从不同的角度对其进行分 类,按功能分为:(C),如果为读取的内容进行处理后再输出,需要使用下列哪种流?(G)   A.输入流和输出流 B.字节流和字符流 C.节点流和处理流   D.File stream E.Pipe stream F.Random stream G.Filter stream

其它几个常用的IO辅助流

常用的其它流 1.数据流(DataInputStream/DataOutputStream) java.io 类 DataInputStream java.lang.Object 继承者java.io.InputStream 继承者 java.io.FilterInputStream 继承者 java.io.DataInputStream public class DataInputStream extends FilterInput Stream implements DataInput 数据

Java学习---6.常用的容器,流

1.java提供的容器的API位于java.util包内. set:不可以重复,无序.List:可以重复,有顺序.map:键值对的映射方法. Collection c=new ArrayList(): 2.泛型:用到集合时使用泛型,在定义集合的时候定义集合的类型,.可以增强程序的可读性和稳定性. 3.流:Java流式输入/输出原理:

阶段3 2.Spring_04.Spring的常用注解_5 自动按照类型注入

运行出现了空指针异常 @Autowired 注解出现的位置 AutoWired的代码 常用的就是写类上和方法上. 运行测试,刚才运行是一个空指针异常 也就是通过Autowired 这个accountDao这个对象不为空了. 注入成功原理 自动按照类型注入.IAccountDao去Spring的容器里面直接找的Value值 如果把实现类继承接口IAccountDao这里代码注释掉的话 再次运行就发现注不进去报错. 假设容器中两个实现类 复制一份改个名字 id后面也加上2 第一个实现的实现接口的代码

常用的接口限流算法

在开发高并发系统时,有三把利器用来保护系统:缓存.降级和限流.那么何为限流呢?顾名思义,限流就是限制流量,就像你宽带包了1个G的流量,用完了就没了.通过限流,我们可以很好地控制系统的qps,从而达到保护系统的目的.本篇将会介绍一下常用的限流算法以及他们各自的特点. 算法介绍 计数器法 计数器法是限流算法里最简单也是最容易实现的一种算法.比如我们规定,对于A接口来说,我们1分钟的访问次数不能超过100个.那么我们可以这么做:在一开始的时候,我们可以设置一个计数器counter,每当一个请求过来的时

C# 中常用数据类型与控件类型的命名规则

数据类型 数据类型简写 标准命名举例 Array arr arrShoppingList Boolean bln blnIsPostBack Byte byt bytPixelValue Char chr chrDelimiter DateTime dtm dtmStartDate Decimal dec decAverageHeight Double dbl dblSizeofUniverse Integer int intRowCounter Long lng lngBillGatesInc

Android常用动作广播类别消息类型

String BATTERY_CHANGED_ACTION 广播:充电状态,或者电池的电量发生变化 "android.intent.action.BATTERY_CHANGED" String BOOT_COMPLETED_ACTION 广播:在系统启动后,这个动作被广播一次(只有一次) "android.intent.action.BOOT_COMPLETED" String CALL_FORWARDING_STATE_CHANGED_ACTION 广播:语音电话

常用图像额文件格式及类型

1.显示一幅二值图像: >> bw = zeros(90,90); >> bw(2:2:88,2:2:88) = 1; >> imshow(bw); >> 2.利用image函数显示一幅索引图像: >> [X,MAP] = imread('E:\STUDY_software\Matlab2016\images\11.jpg'); >> image(X); >> colormap(MAP) 3.利用image来显示一幅RGB

MySQL 数据常用类型汇总

1.整数类型 整数类型 字节 最小值 最大值 TINYINT 1 有符号:-128 无符号:0 有符号:127 无符号:255 SMALLINT 2 有符号:-32768 无符号:0 有符号:32767 无符号:65535 MEDIUMINT 3 有符号:-8388608 无符号:0 有符号:8388607 无符号:1677215 INT和INTEGER 4 有符号:-2147483648 无符号:0 有符号:2147483647 无符号:4294967295 BIGINT 8 有符号:-922