io流基本知识

io流继承于Object包下,
java.io.File(文件)实现了Serializable,Comparable接口
只能通过字节单位进行读取
文件的常用构造方法:
没有无参构造方法,每一个file对象都必须标识一个文件或者文件夹。
(1)File(String pathname) 通过给定的路径名字符串转换为抽象路径名来创建新的File实例。
(2)File(File parent, String child)从父抽象路径名和子路径名字符串创建新的 File实例。
(3)File(String parent,String child)从父路径名字符串和子路径名字符串创建新的 File实例。
文件的常用方法:
(1)boolean exitsts();测试此抽象路径名表示的文件或目录是否存在。
(2)String getAbsolutePath(); 返回此抽象路径名的绝对路径名字符串。
(3)String getName();返回由此抽象路径名表示的文件或目录的名称。
(4)String getPath();将此抽象路径名转换为路径名字符串。
(5)boolean isFile();测试文件路径名表示的文件是否为普通文件
(6)String[] list(); 返回一个字符串数组,命名由此抽象路径名表示的目录中的文件和目录。
(7)boolean mkdirs();如果文件夹不存在,就创建一个文件夹,返回一个boolean确定是否创建成功。

io.InputStream 读 (字节流) 常用子类 FileInputStream(字节流) ObjectInputStream
构造方法:InputStream()
常用方法:
void close() 关闭此输入流并释放与流相关联的任何系统资源。
int read()
int read(byte[] b) 从输入流中以字节数组的长度读取一些字节,并将它们存储到缓冲区b,当返回-1时表示数据已经读取完毕
int read(byte[] b, int off, int len) 从输入流读取最多 len字节的数据到一个字节数组。当返回-1时表示数据已经读取完毕
io.OutputStream 写(字节流) 常用子类 FileOutputStream(字节流) ObjectOutputStream
构造方法:OutputStream()
常用方法:
void close() 关闭此输入流并释放与流相关联的任何系统资源。
void flush();刷新此输出流并强制任何缓冲的输出字节被写出。
void write(byte[] b) 将 b.length字节从指定的字节数组写入此输出流。
void write(byte[] b, int off, int len) 从指定的字节数组写入 len个字节,从偏移 off开始输出到此输出流。
void write();将指定的字节写入此输出流。
FileInputStream、FileOutputStream
常用的构造方法:
FileInputStream(File file)通过打开与实际文件的连接创建一个 FileInputStream ,该文件由文件系统中的 File对象 file命名。
FileOutputStream(File file)创建文件输出流以写入由指定的 File对象表示的文件。
常用的方法和其父类的方法基本一样
传输的单位不同分为:字节流、字符流
字节流:FileInputStream、FileOutPutStream
字符流:FileReader(输入流) FileWriter(输出流)
读取的最小单位是字符
过滤流、节点流
数据流:java 中的基本数据类型(原始数据类型)和字符串
DataInputStream继承了FilterInputStream

常用方法:
read(byte [] b) read(byte[] b,int off,int len) boolean readBolean(),readChar(),readByte(),readInt()…
DataOutputStream继承了FilterOutputStream
writeByte(String str),size()返回计数器的当前值 written ,到目前为止写入此数据输出流的字节数。
序列化和反序列化
ObjectInputStream,ObjectOutStream
对象—>流:序列化
流—>对象:反序列化
类实现Serializable接口,表示这个类的对象可以序列化
readObject() 从ObjectInputStream读取一个对象。
writeObject(Object obj) 将指定的对象写入ObjectOutputStream。
传输的方向不同:输入流、输出流

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值