Java基础6 IO 流

IO 流

File

位于Java.io.包

表示文件或者文件夹

Java跨平台

不同的平台:分隔符不一样

区分不同的操作系统:

使用file的静态的常量:

public static final String separator

path 分隔符:

linnux: :

windows:;

对文件创建修改等不能阅读

java.io.File 类是专门对文件进行操作的类。(只能对文件本身进行操作,不能对文件内容操作)

File的常用方法

在这里插入图片描述

方法递归:

方法内部调用自己,实现重复的操作,循环操作

  • 参数发生改变
  • 也要有递归调用的终点

循环条件不确定时使用

IO分类

按照方向分:输入流和输出流

输入流:读操作

输出流:写操作

按照IO管道大小:字节流:一个字节一个字节的读写 (万能流)

​ 字符流:一个字符一个字符的读写

输入流主要方法:

read( )读方法

close( ) 关闭

输出流主要方法

write()写方法

close()关闭

编写步骤:

  1. 创建IO流对象
  2. 读/写操作
  3. 关闭资源

直接对文件读写

字节节点流

​ FileInputStream 文件字节输入流

​ FileOutputStream:文件字节输出流

字符节点流:对文本文件进行读写(能不能用word文档打开)

FileRead:文件字符输入流

FileWrite:文件字符输出流

一点经验:有InputStream的是字节

位于IO包下面

1.创建IO流对象

FileInputStream fis = new FileInputStream

2.读操作

3.关闭

字节输入流的read()方法如果读到末尾返回-1

字节输出流里如果文件不存在会创建文件,但如果路径目录不存在无法创建 如果没有指定append参数 默认flase不追加,每次往文件写内容则会先清空之前
感觉比较有用的:

对象流

为什么序列化:方便对象保存,或者网络传输

为什么反序列化:配合序列化,取对象

不是所有的对象都可以序列化(必须要有通行证),必须实现

Serializable接口

Serializable接口中没有任何方法 只是一个标识接口

涉及到两个类:ObjectInputStreamObjectOutputStream

对象序列化机制 允许把内存中的 Java 对象转换成平台无关的二进制流,从而允许把这种二进制流持久地保存在磁盘上,或通过网络将这种二进制流传输到另一个网络节点。// 当其它程序获取了这种二进制流,就可以恢复成原来的Java 对象
序列化 的好处在于可将任何实现了 Serializable 接口的对象转化为 字节数据 , 使其在保存和传输时可被还原
不能序列化 static 和 transient 修饰的成员变量

,就可以恢复成原来的Java 对象
序列化 的好处在于可将任何实现了 Serializable 接口的对象转化为 字节数据 , 使其在保存和传输时可被还原
不能序列化 static 和 transient 修饰的成员变量

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值