Java I/O 流学习笔记(7月14号)

这篇博客详细介绍了Java中的File类,包括File对象的创建、删除、修改等操作。接着讲解了Java I/O流的基本概念、处理流模型、字节流与字符流的区别以及各种流的使用。特别提到了转换流、缓冲流和文件过滤器。此外,还讨论了Java NIO的非阻塞原理和相对于传统BIO的优点。博客最后总结了I/O流在实际编程中的重要性和应用。
摘要由CSDN通过智能技术生成

作者信息

作者:黄钰朝
邮箱:kobe524348@gmail.com
日期:2019年7月14日

前言

今天整理了Java的File类的相关方法,和Java中IO流相关的知识,了解JavaIO包中的各种流的体系,学习JavaNIO和JavaIO的区别,并且了解Java中的socket编程,按照导师的要求,使用socket编写聊天程序。

一.Java中的File类

1.1 什么是File?

  • File是Java中用来代表文件/文件夹的一个对象
  • File不等于文件,只是文件的抽象,Flie作为一个Java类的实例而存在,不依赖于具体的文件,只是Java把对文件的操作抽象成为对File对象的操作。
  • File对象可以实现对文件的创建,删除,修改等操作,但是无法进行文件内容的读取,只能依靠IO流.

1.2 两种文件路径

  • 绝对路径:带盘符的完整路径
  • 相对路径:不写盘符,默认以项目位置为当前路径

1.3 File类的三种构造方法

  • 通过一个文件路径创建一个File对象
  • 通过一个文件路径+文件名/文件夹名创建一个File对象
  • 通过一个File对象+文件名/文件夹名创建一个File对象

其中第三种相当于把父目录封装成File对象,再根据文件名/文件夹名创建File对象

1.4 File类常用方法

创建:如果目标文件/文件夹已存在,就不创建了

  • createNewFile:创建一个文件,如果目录不存在则无法创建
  • mkdir:创建一个文件夹,如果目录不存在则无法创建
  • mkdirs:创建文件夹,如果目录不存在则创建多级文件夹

删除:如果目标文件夹内有文件/文件夹,则无法删除

  • delete:删除一个文件/文件夹

修改:

  • renameTo(File newfile):重命名一个文件/文件夹,相当于把文件转移到另一个File对象所指的路径

另有获取文件名,文件是否存在/可读/可写等方法

1.5 List方法获取当前目录下的文件/文件名数组

  • list方法:获取当前目录下的文件名数组
  • listFiles方法:获取当前目录下的文件数组

1.6 文件过滤器FilenameFilter

使用FilenameFilter过滤器,其目的是给list()方法列出文件或文件名时增加筛选条件

主要思想:过滤器模式和模板模式

创建一个过滤器,通过重写接口的accept方法传递策略,list方法在遍历文件名时使用过滤器去除不符合条件的文件

扩展:使用Lambda表达式简化代码

FilenameFilter接口是单函数接口,因此可以使用Lambda表达式简化代码

二.Java中的I/O流

2.1 什么是I/O流?

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值