IO的基础部分析

IO的基础部分析

io流操作磁盘

public class DirectoryDemo {
    public static void main(String[] args) {
        File file = new File("e://a/b/c");
//        单级别目录
//        建立文件夹
//        System.out.println(file.mkdir());
//        多级别目录
//        建立多级文件夹
//        System.out.println(file.mkdirs());
//        文件夹是否存在
//        System.out.println(file.exists());
//        是否为目录
//        System.out.println(file.isDirectory());
//        作用是获得父目录
//        System.out.println(file.getParentFile());
//        作用是获得父目录的名字
//        System.out.println(file.getParentFile().getName());
//        d盘目录下面的所有文件
//        File file1 = new File("d:/");
//        String[] arr = file1.list();
//        for (String s : arr) {
//            System.out.println(s);
//
//        }
//        d盘目录下面的路径+文件名
        File file1 = new File("d:/");
        File[] arr= file1.listFiles();
        for (File s : arr) {
            System.out.println(s);
        }

    }
}
public class FileDemo {
    public static void main(String[] args) throws IOException {
       File file = new File("d://aa.txt");
//        如果文件存在返回false, 如果文件不存在返回true并进行创建
        System.out.println(file.createNewFile());
//        删除文件
//        System.out.println(file.delete());
//        判断文件是否存在
        System.out.println(file.exists());
//        获得文件的名字
        System.out.println(file.getName());
//        获得文件的绝对路径
        System.out.println(file.getAbsolutePath());
//        判断是否是一个文件
        System.out.println(file.isFile());
//        判断文件是否隐藏
        System.out.println(file.isHidden());

    }
}

什么是流

Java中的流是对字节序列的抽象,我们可以想象有一个水管,只不过现在流动在水管中的不再是水,而是字节序列。和水流一样,Java中的流也具有一个“流动的方向”,通常可以从中读入一个字节序列的对象被称为输入流;能够向其写入一个字节序列的对象被称为输出流。

图片传不上去自己去搜一张吧!

字节流

它通常用来处理二进制数据。Java中最基本的两个字节流类是InputStream和OutputStream,它们分别代表了组基本的输入字节流和输出字节流。InputStream类与OutputStream类均为抽象类,我们在实际使用中通常使用Java类库中提供的它们的一系列子类。

字符流

它通常用来处理文本数据。所谓Unicode码元,也就是一个Unicode代码单元(大小2字节),范围是0x0000~0xFFFF。在以上范围内的每个数字都与一个字符相对应,Java中的String类型默认就把字符以Unicode规则编码而后存储在内存中。然而与存储在内存中不同,存储在磁盘上的数据通常有着各种各样的编码方式。使用不同的编码方式,相同的字符会有不同的二进制表示。实际上字符流是这样工作的:

  • 输出字符流:把要写入文件的字符序列(实际上是Unicode码元序列)转为指定编码方式下的字节序列,然后再写入到文件中;
  • 输入字符流:把要读取的字节序列按指定编码方式解码为相应字符序列(实际上是Unicode码元序列从)从而可以存在内存中。

码方式下的字节序列,然后再写入到文件中;

  • 输入字符流:把要读取的字节序列按指定编码方式解码为相应字符序列(实际上是Unicode码元序列从)从而可以存在内存中。
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值