(1)
概念:一组有序的数据序列(字节数组)

(2)
分类

a)
方向


输入:从外到内 XxxInputStream(字节输入)/XxxReader(字符输出)


输出:从内到外 XxxxOutStream/XxxxWrite

b)
内容


字节流:byte[] XxxInputStream和XxxxOutStream


字符流:char[] XxxReader和XxxxWrite

c)
功能


节点流:(基础流)直接面向数据源的流


处理流:(不能直接使用)扩展了节点流在某些特定领域的操作

d)
是否依赖网络


本地流:文件流


网络流:

(3)
文件流

a)
目录:


File

1) File dir = New File(String path);//创建目录对象

2) boolean exists = dir.exists();//目录是否存在

3) boolean isDir = dir.isDirectory();//是否目录、

File[] whats = dir.listFile([FileNameFiter/FileFilter
filter]);

关于相对路径和绝对路径

a、 普通java功能:相对路径为项目的根目录

b、 绝对路径:从分区根目录开始的路径(一般用相对路径,可用于测试)

4) boolean success = dir.mkdir(s)();

i.
mkdir:创建最后一级目录

ii.
mkdirs:创建所有不存在的目录

b)
文件:


File

1) File file = new File(String path);//创建文件对象

2) boolean exists = file.exists();//文件是否存在

3) boolean isFile = file.isFile();//是否是文件

4) String parentDir = file.getParent();//获取父类目录字符串

5) File parent = file.getParent();//获取父目录对象

6) String filename = file.getNmae();//获取文件名称

7) long realSize =file.length();//获取文件实际字节数

8) long freeSpace = file.getFreeSpace();//获取文件可存剩余字节数

9) long lastMod = file.lastModfiled();//获取文件上一次修改的长整时间

10) boolean success = file.createNewFile();//创建文件

c)
文件流:


字符文件流

1) 字符文件

i.
FileReader = new
FileReader(String/File path);

ii.
int len = fr.read(char[] sc); //len实际读取的字符数,-1表示文件结尾

iii.
fr.close(); 释放文件资源

2) 字符文件输出流

i.
FileWritre fw = new File Writer(String
/File.path,boolean appeand);

默认为覆盖写入模式,append表示追加模式

ii.
fw.write(char[] cs[,int
beginindex,int count]);

iii.
fw.writer(String str[,int
beginindex,int count]);

iv.
fr.close(); 释放文件资源

v.

3) 字符缓存读写流

i.

BufferedReader br = new
BufferedReader(FileReader fr();

String line = be.readLine();
//line:实际读取行的内容,null表示文件结尾

br.close();//同步关闭关联流资源,并释放文件资源

ii.
写:

BufferedWriter bw = new
BufferedWrier(FileWriter fw);

br.newLine(); //添加新行

……

br.close();

2、 字节文件流

(1)
输入

a)
FileinputStream fis = new
FileinputStream(String/File src);

如果src即文件不存在报错 java.io.FileNotFoundExeption

b)
int len = fis.read(byte[] bs);

c)
fs.close();

(2)
输出

a)
FileOutputStream fos = new FileOutputStream(String/File
dest);

如果dest目录不存在,则报错 java.io FileNotFoundExeption

b)
Fos.write(byte[] bs,int
beginindex,int count);

c)
Fos.close();

3、 Java对象的序列化和反序列化

Class Msg implements Serializable{…}

(1)
序列化

ObjectOutputStream oos = new ObjectOutputStream(文件输出流/网络输出流);

oos.writeObject();

oos.fiush();

oos.close();

(2)
反序列化

ObjectInputStream ois = new ObjectInputStream(文件输入流/网络输入流);

Msg msg = (Msg) ois.readObject();

……

Ois.close();

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值