10.7 IO 流 | 转换流 Flie


对象流


ObjectInPutStream:反序列化

public class FanXu {
    public static void main(String[] args) {
        try (FileInputStream f=new FileInputStream("D:/a");){
            ObjectInputStream o=new ObjectInputStream(f);
            Object o1 = o.readObject();
            System.out.println(o1);

        } catch (Exception e) {
            e.printStackTrace();
        }
    }
}
反序列写法


ObjectOutPutStream:序列化

public class XuLieHua {
    public static void main(String[] args) {
        User user = new User("xxx","12356");
        try (FileOutputStream a=new FileOutputStream("D:/a");
             ObjectOutputStream o=new ObjectOutputStream(a);

        ){
            o.writeObject(user);


        } catch (Exception e) {
            e.printStackTrace();
        }
    }
}
序列化


注意点:
1.被序列化的类需要实现Serializable接口

public class User implements Serializable {

2.序列化的版本号long serialVersionUID设置  反序列化时版本必须相同否则无法反序列化。

private static final long serialVersionUID=1L;

3. transient  修饰符  不想被序列化的字段加上 这个修饰符。

只要实现了Seralizable 就加上序列化Id版本。

Flie 类

根据相同自动提供分隔符  File类提了一个常量:public static final String separator。.

File file=new File(pathname:"D:+File.separator+"a");

//File.separator

方法

获取文件绝对路径

file.getAbsolutePath()

获取父路径

file.getParent

获取最后一次修改的时间

System.out.println(file.LastModified());
Date date=new Date(file.LastModified());
System.out.println(date);

获取当前目录下的目录结构 的名字 包括文件和文件夹

String[]list file.list();
for (string eve:List)
System.out.println(eve);
}

获取当前目录下的目录结构 的文件 包括文件和文件夹

File[]files file.listFiles();
for (File eve:files)
System.out.println(eve.listFiles());
//递归 复制

判断是否是目录

file.isDirectory())

判断是否是文件

file.isFile());

判断是否存在

file.exists()

创建文件夹

file.mkdirs();

创建文件

file.createNewFile();

删除文件夹,文件

file.delete();

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值