JAVA IO 类库详解
JAVA IO类库详解
一、InputStream类
1、表示字节输入流的所有类的超类,是一个抽象类。
2、类的方法
|
方法 |
参数 |
功能详述 |
|
InputStream |
构造方法 |
|
|
available |
如果用inputStream对象的available()方法获取流中可读取的数据大小,通常我们调用这个函数是在下载文件或者对文件进行其他处理时获取文件的总大小。 |
|
|
read |
从输入流中读取数据的下一个字节 |
|
|
mark |
(int readlimit) |
在输入流中标记当前的位置 |
|
markSupported |
判断输入流是否支持mark()和reset()方法 |
|
|
reset |
将流重新定位到流最后一次调用mark方法时的位置 |
|
|
skip |
(long n) |
跳过或丢弃输入流中的n个字节 |
二、OutputStream类
1、表示字节输出流的所有类的超类,是一个抽象类。
2、类的方法
|
方法 |
参数 |
功能详述 |
|
OutputStream |
构造器 |
|
|
write |
将指定的字节写入此输出流 |
|
|
flush |
涮新输出流并强制写出所有缓冲的输出字节 |
|
|
close |
关闭输出流 |
|
三、Reader类
1、读取字符流的抽象类。子类必须实现的方法只有 read(char[], int, int) 和 close()。
2、类的方法
|
方法 |
参数 |
功能详述 |
|
字段lock |
用于同步针对流的操作对象 |
|
|
Reader |
构造器,同步其自身 |
|
|
Reader |
(Object lock) |
构造器,同步给定的对象 |
|
read |
读取单个字符 |
|
|
mark |
标记流中的当前位置 |
|
|
markSupporte |
判断流是否支持mark方法 |
|
|
ready |
判断是否准备读取此流 |
|
|
reset |
重置流 |
|
|
skip |
跳过n个字符 |
|
|
close |
关闭 |
|
四、Writer类
1、写入字符流的抽象类。子类必须实现的方法仅有 write(char[], int, int)、flush() 和 close()。
2、类的方法
|
方法 |
参数 |
功能详述 |
|
字段lock |
同步流的操作对象 |
|
|
Writer |
构造器,同步其自身 |
|
|
Writer |
(Object lock) |
构造器,同步给定的对象 |
|
write |
写当个字符 |
|
|
append |
将指定字符添加到流中 |
|
|
flush |
涮新流的缓冲 |
|
|
close |
关闭 |
|
五、File类
1、文件和目录路径名的抽象表示形式。
2、类的方法
|
方法 |
参数 |
功能详述 |
|||
|
字段pathSeparatorChar |
路径的斜线分隔符,字符表示 |
||||
|
字段pathSeparator |
路径的斜线分隔符,字符串表示 |
||||
|
字段separatorChar |
路径的冒号分隔符,字符表示 |
||||
|
字段separator |
路径的冒号分隔符,字符串表示 |
||||
|
File |
(File parent, String child) |
根据父文件的抽象路径和子路径创建实例 |
|||
|
File |
(String pathnaem) |
通过将给定路径名字字符串转换为抽象路径来创建实例 |
|||
|
File |
(String parent, String child) |
根据父路径和子路径来创建实例 |
|||
|
File |
(URI uri) |
通过将给定的 file: URI 转换为一个抽象路径名来创建实例 |
|||
|
创建文件或目录 |
|||||
|
createNewFile |
不存在具有此抽象路径名指定名称的文件时,创建一个空文件 |
||||
|
createTempFile |
(String prefic, String suffix) |
在默认文件目录中,根据前缀和后缀创建一个空文件 |
|||
|
createTempFile |
(String prefic, String suffix, File directory) |
在指定目录中,根据前缀和后缀创建一个空文件 |
|||
|
获取抽象路径 |
|||||
|
getAbsoluteFile |
返回抽象路径名的绝对路径名。 |
||||
|
getAbsolutePath |
返回抽象路径名的绝对路径名字符串。 |
||||
|
getCanonicalFile |
返回抽象路径名的规范形式。 |
||||
|
getCanonicalPath |
返回抽象路径名的规范路径名字字符串。 |
||||
|
getFreeSpace |
返回抽象路径名指定分区中未分配的字节数。 |
||||
|
getName |
返回抽象路径名表示的文件或目录的名称。 |
||||
|
getParent |
返回抽象路径的父目录的路径名字符串。 |
||||
|
getParentFile |
返回抽象路径的父目录的抽象路径名。 |
||||
|
getPath |
将抽象路径名转换为一个路径名字符串。 |
||||
|
getTotalSpace |
返回抽象路径名指定的分区大小。 |
||||
|
getUsableSpace |
返回抽象路径名指定的分区上可用于此虚拟机的字节数。 |
||||
|
设置抽象路径 |
|||||
|
setExecutable |
(boolean executable) |
设置抽象路径名所有者执行权限 |
|||
|
setExecutable |
(boolean executable, Boolean ownerOnly) |
设置抽象路径名所有者或所有用户的执行权限 |
|||
|
setLastModified |
(long time) |
设置抽象路径名的指定的文件或目录的最后一次修改时间 |
|||
|
setReadable |
(boolean readable) |
设置抽象路径名的所有者或所有用户的读权限。 |
|||
|
setReadable |
(boolean readable, Boolean ownerOnly) |
设置抽象路径名的所有者或所有用户的读权限。 |
|||
|
setReadOnly |
设置路径或文件为读权限 |
||||
|
setWritable |
(Boolean writable) |
设置抽象路径名的所有者或所有用户的写权限 |
|||
|
setWritable |
(Boolean writable, Boolean ownerOnly) |
设置抽象路径名的所有者或所有用户的写权限 |
|||
|
抽象路径其他操作 |
|||||
|
compareTo |
(File pathname) |
按字母顺序比较两个抽象路径名 |
|||
|
delete |
删除抽象路径名表示的文件或目录 |
||||
|
deleteOnExit |
虚拟机终止时,请求删除抽象路径名表示的文件或目录 |
||||
|
equals |
(Object obj) |
测试此抽象路径名与给定对象是否相等。 |
|||
|
exists |
测试此抽象路径名表示的文件或目录是否相等。 |
||||
|
hashCode |
计算抽象路径名的哈希码。 |
||||
|
isAbsolute |
判断抽象路径名是否为绝对路径名 |
||||
|
isDirectory |
判断抽象路径名表示的文件是否是一个目录。 |
||||
|
isFile |
判断抽象路径名表示的文件是否是一个标准文件。 |
||||
|
isHidden |
判断抽象路径名表示的文件是否是一个隐藏文件。 |
||||
|
lastModified |
返回抽象路径名表示的文件最后一次被修改的时间。 |
||||
|
length |
返回由此抽象路径名表示的文件的长度。 |
||||
|
list |
返回抽象路径名下文件和目录的字符串。 |
||||
|
listFiles |
返回抽象路径名下文件。 |
||||
|
listRoots |
列出可用的文件系统跟。 |
||||
|
mkdir |
创建抽象路径名指定的目录。 |
||||
|
mkdirs |
创建抽象路径名指定的目录,包括所有必须但不存在的父目录。 |
||||
|
renameTo |
(File dest) |
重新命名抽象路径名表示的文件。 |
|||
|
toString |
返回抽象路径名的字符串。 |
||||
|
toURI |
构造抽象路径名的file:URI |
||||
六、RandomAccessFile类
1、支持对随机访问文件的读取和写入。
2、类的方法
|
方法 |
参数 |
功能详述 |
|
RandomAccessFile |
(File file, String mode) |
创建文件随机读写流。 |
|
RandomAccessFile |
(String name, String mode) |
创建文件随机读写流,文件由指定名称指定。 |
|
getChannel |
返回与此文件关联的唯一FileChannel对象 |
|
|
getFD |
返回与此关联的不透明文件描述符对象。 |
|
|
getFilePointer |
返回此文件中的当前偏移量。 |
|
|
read |
读 |
|
|
length |
返回文件长度 |
|
|
readBoolean |
从文件读取一个boolean |
|
|
readByte |
从文件读取一个有符号的八位值 |
|
|
readChar |
从文件读取一个字符 |
|
|
readDouble |
从文件读取一个double |
|
|
readFloat |
从文件读取一个Float |
|
|
readFully |
从当前文件指针开始读数据 |
|
|
readInt |
从文件读取一个有符号32位整数 |
|
|
readLine |
从文件读取文本的下一行 |
|
|
readLong |
从文件读取一个有符号的64为整数 |
|
|
readShort |
从文件读取一个有符号的16为整数 |
|
|
readUnsignedByte |
从文件读取一个有符号的8为整数 |
|
|
readUnsignedShort |
从文件读取一个有符号的16为整数 |
|
|
readUTF |
从文读取一个字符串 |
|
|
seek |
设置文件的偏移量(文件开头) |
|
|
setLength |
设置文件的长度 |
|
|
skipBytes |
尝试跳过输入的 n 个字节以丢弃跳过的字节 |
|
|
write |
写入数据 |
|
|
writeBoolean |
向文件写入一个boolean |
|
|
writeByte |
按单字节向文件写入byte |
|
|
writeBytes |
按字节序列向文件写入 |
|
|
writeChar |
按双字节向文件写入char |
|
|
writeChars |
按双字符序列向文件写入 |
|
|
writeDouble |
向文件写入 |
|
|
writeFloat |
向文件写入 |
|
|
writeInt |
按4字节向文件写入int |
|
|
writeLong |
按8字节向文件写入long |
|
|
writeShort |
按2字节向文件写入short |
|
|
writeUTF |
使用 modified UTF-8 编码以与机器无关的方式将一个字符串写入该文件。 |
|
|
close |
关闭 |
|
七、InputStreamReader类
1、字节转换字符流类。
2、类方法
|
方法 |
参数 |
功能详述 |
|
|
InputStreamReader |
(InputStream in) |
默认字符集 |
|
|
InputStreamReader |
(InputStream in, Charset cs) |
给定字符集 |
|
|
InputStreamReader |
(InputStream in, CharsetDecoder dec) |
给定解码器 |
|
|
InputStreamReader |
(InputStream in, String charsetName) |
指定字符集 |
|
|
getEncoding |
返回流使用的字符编码的名称。 |
||
|
read |
读取 |
||
|
ready |
判断流是否已经准备好用于读取。 |
||
八、OutputStreamWriter类
1、字符转换字节流类。
2、类方法
|
方法 |
参数 |
功能详述 |
||
|
OutputStreamWriter |
(OutputStream out) |
默认字符编码 |
||
|
OutputStreamWriter |
(OutputStream out, Charset cs) |
给定字符集 |
||
|
OutputStreamWriter |
(OutputStream out, CharsetEncoder enc) |
给定解码器 |
||
|
OutputStreamWriter |
(OutputStream out, String charsetName) |
指定字符集 |
||
|
getEncoding |
返回流使用的字符编码的名称 |
|||
|
write |
写入 |
|||
|
flush |
刷新流的缓冲 |
|||
|
close |
关闭流 |
|||
九、ByteArrayInputStream
1、内存输入流
2、类方法
|
方法 |
参数 |
功能详述 |
|
|
ByteArrayInputStream |
(byte[] buf) |
buf为流缓冲区数组 |
|
|
ByteArrayInputStream |
(byte[] buf, int off, int len) |
buf为流缓冲区数组 |
|
|
字段buf |
由流的创建者提供的byte数组。 |
||
|
字段count |
比输入流缓冲区中最后一个有效字符的索引大一的索引。 |
||
|
字段mark |
流中当前标记的位置。 |
||
|
字段pos |
要输入流缓冲区中读取的下一个字符的索引。 |
||
|
available |
返回可从此输入流读取(或跳过)的剩余字节数 |
||
|
read |
从输入流中读取数据 |
||
|
skip |
从输入流中跳过n个输入字节 |
||
|
reset |
将缓冲区的位置重置为标记位置 |
||
|
mark |
设置流中的当前标记位置 |
||
|
markSupported |
判断流是否支持mark / reset |
||
|
clsose |
关闭 |
||
十、ByteArrayOutputStream类
|
方法 |
参数 |
功能详述 |
||
|
ByteArrayOutputStream |
创建一个新的byte数组输出流 |
|||
|
ByteArrayOutputStream |
(int size) |
创建一个新的指定大小的byte数组输出流 |
||
|
字段buf |
存储数据的缓冲区 |
|||
|
字段count |
缓冲区中的有效字节数 |
|||
|
write |
将字节写入输出流 |
|||
|
writeTo |
将byte数组写入输出流 |
|||
|
toString |
使用默认的字符集,通过解码字节将缓冲区内容转换为字符串。 |
|||
|
toByteArray |
创建一个新分配的byte数组 |
|||
|
size |
返回缓冲区的当前大小 |
|||
|
reset |
将count字段重置为0,丢弃输出流中目前已积累的所有输出。 |
|||
|
close |
关闭 |
|||
十一、PipedInputStream类
1、管道输入流,用于接收从另一个现场输出的数据。
2、类方法
|
方法 |
参数 |
功能详述 |
|
|
PipedInputStream |
创建未连接的流 |
||
|
PipedInputStream |
(int pipeSize) |
创建未连接的流,并且设置缓冲区大小 |
|
|
PipedInputStream |
(PipedOutputStream src) |
创建连接的流 |
|
|
PipedInputStream |
(PipedOutputStream src, int size) |
创建连接的流,并且设置缓冲区大小 |
|
|
字段buffer |
数据循环缓冲区 |
||
|
字段in |
接收下一个数据将保存的位置索引 |
||
|
字段out |
数据读取位置的前一个位置索引 |
||
|
字段PIPE_SIZE |
数据缓冲区的默认大小 |
||
|
read |
读取流中的下一个数据 |
||
|
receive |
接收数据字节 |
||
|
connect |
连接管道输出流 |
||
|
available |
返回可以不受阻塞地从此输入流中读取的字节数。 |
||
|
close |
关闭 |
||
十二、PipedOutputStream类
1、管道输出流。用于将线程的数据输出到另一个线程中。
2、类方法
|
方法 |
参数 |
功能详述 |
|
PipedOutputStream |
创建未连接的流 |
|
|
PipedOutputStream |
(PipedInputStream snk) |
创建连接的流 |
|
write |
将数据写入传送的管道输出流。 |
|
|
flush |
刷新流并强制写出所有缓冲的输出字节。 |
|
|
connect |
将流连接到指定管道输入流 |
|
|
close |
关闭 |
|
JAVA IO 类库详解的更多相关文章
- Java io流详解四
转载地址:http://www.cnblogs.com/rollenholt/archive/2011/09/11/2173787.html 写在前面:本文章基本覆盖了java IO的全部内容,jav ...
- java IO流详解
流的概念和作用 学习Java IO,不得不提到的就是JavaIO流. 流是一组有顺序的,有起点和终点的字节集合,是对数据传输的总称或抽象.即数据在两设备间的传输称为流,流的本质是数据传输,根据数据传输 ...
- Java IO最详解
初学java,一直搞不懂java里面的io关系,在网上找了很多大多都是给个结构图草草描述也看的不是很懂.而且没有结合到java7 的最新技术,所以自己来整理一下,有错的话请指正,也希望大家提出宝贵意见 ...
- Java io流详解二
原文地址https://www.cnblogs.com/xll1025/p/6418766.html 一.IO流概述 概述: IO流简单来说就是Input和Output流,IO流主要是用来处理设备之间 ...
- 《Java基础知识》Java IO流详解
Java IO概念 1. 用于设备之间的数据传输. 2. Java 将操作数据流的功能封装到了IO包中. 3. 数据流流向分:输入流和输出流,操作对象为文件. 4. 流按照操作数据分:字节流(通用)和 ...
- Java IO流详解(六)——转换流
转换流也是一种处理流,它提供了字节流和字符流之间的转换.在Java IO流中提供了两个转换流:InputStreamReader 和 OutputStreamWriter,这两个类都属于字符流.其中I ...
- Java IO流详解(五)——缓冲流
缓冲流也叫高效流,是处理流的一种,即是作用在流上的流.其目的就是加快读取和写入数据的速度. 缓冲流本身并没有IO功能,只是在别的流上加上缓冲效果从而提高了效率.当对文件或其他目标频繁读写或操作效率低, ...
- Java IO流详解(四)——字符流Reader和Writer
前面一章介绍了字节流的使用,提到了字节流在处理utf-8编码的中文可能会出现乱码的情况(其他编码的中文同样会出现乱码),所以Java针对这一情况提供了字符流. 但是字符流只能处理字符,不能用来处理 . ...
- Java IO流详解(三)——字节流InputStream和OutPutStream
我们都知道在计算机中,无论是文本.图片.音频还是视频,所有的文件都是以二进制(字节)形式存在的,IO流中针对字节的输入输出提供了一系列的流,统称为字节流.字节流是程序中最常用的流.在JDK中,提供了两 ...
随机推荐
- Zygote(app_process)相关分析2
在前一篇文章中已经分析了从init.c到Zygote(app_process)的启动流程. 今天开始分析frameworks/base/cmds/app_process/app_main.cpp. s ...
- Android--监听ListView滚动到最底部
监听ListView滚动到最底部使用 onScrollStateChanged(AbsListView view, int scrollState) 方法,代码大致如下: // 监听listview滚 ...
- libevent I/O示例
I/O示例使用一个windows平台上服务器/客户端的例子来演示.由于为了减少代码篇幅等各种由于本人懒而产生的原因,以下代码没有做错误处理以及有些小问题,但是我想应该不影响演示,大家多包涵. 服务器代 ...
- UITabelView 高级(自定义Cell)
自定义一个Cell 当我们要显示复杂数据的时候,例如要做一个扣扣聊天界面,或是新闻列表,系统的行已经不能满足我们的要求,这个时候我们可以通过自定义这个行,让他显示更多复杂结构的样式. 自定义cell就 ...
- mysql取整,小数点处理函数floor(), round()
mysql数值处理函数floor与round 在mysql中,当处理数值时,会用到数值处理函数,如有一个float型数值2.13,你想只要整数2,那就需要下面的函数floor与round. ...
- iOS7 隐藏状态栏 hide statusBar
1.调用 [self setNeedsStatusBarAppearanceUpdate]; 2.重载以下函数 - (BOOL)prefersStatusBarHidden{ return _hide ...
- Qt---在QLabel上实现系统时间
参考:http://blog.csdn.net/g457499940/article/details/11923887 ---------------------------------------- ...
- mysql 创建一个用户,指定一个数据库
mysql 创建一个用户 hail,密码 hail,指定一个数据库 haildb 给 hail mysql -u root -p password use mysql; insert into use ...
- Integer对象
数字格式的字符串转成基本数据类型的方法: 1:将该字符串封装成了Integer对象,并调用对象的方法intValue(); 2:使用Integer.parseInt(numstring):不用建立对象 ...
- 代码复用 -- 深入了解javascript
/* 代码复用 */ /* 一.避免 */ /* 模式1:默认模式 */ function Parent() { this.name = "123"; } Parent.proto ...