7.19-7.20 Java基础 | File类 I/O流学习笔记

【难点】【重点】


一、File类

java.io.File类

作用:文件的创建、查找、删除

1、构造方法:

public File(String pathname);

public File(String parent,String child);

public File(File parent ,String child);

示范:

2、常用方法:

(1)文件相关方法

返回String:

  • getAbsolutepath();获取绝对路径
  • getName();获取文件名
  • getPath();获取文件的路径
  • getParent();获取父文件路径

返回long:

  • length();获取文件大小(字节)
  • lastModified();获取文件最后修改时间(ms)

返回File:

  • getParentFile();获取父文件

(2)判断相关方法

返回boolean类型:

  • canRead();是否可读
  • exists();是否存在
  • isDirectory();是否是目录
  • isFile();是否是一个正常文件
  • idHidden();是否隐藏
  • canExecute();是否可执行
  • renameTo();文件重命名

toString的效果是相对路径

(3)目录

  • delete();删除目录的话,只会删除一层,并且这层目录是空的,有内容就不会被删除
  • mkdirs();创建多层目录,mkdir()创建单层目录

(4)文件列表方法

  • String[] list=f.**list();**返回文件夹目录下的文件对应名字的数组
  • File[] files =f.**listFiles();**返回文件对象

二、IO流

节点流 单独一根"管",处理数据对应的那个流

处理流 "管"套着"管",组合使用(构造器嵌套)

1、字节流

理解概念:OutputStream 输出流,有方法write();InputStream输入流 ,方法read();

图示:

"从数组输出(OutputStream)内容 给文件就是写入write()文件

文件读出read() 内容输入(InputStream)给数组"

OutputStream常用方法:

public abstract void write(int b);//写一个字节

public void write(byte b[])throws IOException;//将给定的字节数组内容全部写入文件中

内容------》放到b[]里面

public void write(byte b[],int off,int len)throws IOException;指定偏移量和长度之间的内容写入文件

public void flush() throws IOException;//强制将通道中数据全部写出

public void close() throws IOException;关闭通道

文件输出流FileOutputStream

InputStream常用方法:

除了close()其他返回的都是int

read( a); a[]里面的内容被读出来

read(byte b[],int off ,int len);

close();

avilable();获取通道中数据的长度

2、字符流

明天继续,,,

相关推荐
进阶小白猿3 小时前
Java技术八股学习Day36
学习
毕设源码-朱学姐4 小时前
【开题答辩全过程】以 基于JavaWeb的网上家具商城设计与实现为例,包含答辩的问题和答案
java
四维碎片5 小时前
【Qt】UDP跨平台调试工具
qt·学习·udp
好奇龙猫5 小时前
【人工智能学习-AI入试相关题目练习-第十八次】
人工智能·学习
C雨后彩虹6 小时前
CAS与其他并发方案的对比及面试常见问题
java·面试·cas·同步·异步·
程序员辣条6 小时前
AI产品经理:2024年职场发展的新机遇
人工智能·学习·职场和发展·产品经理·大模型学习·大模型入门·大模型教程
wanping158259923416 小时前
AI Agent(学习六-FAISS 持久化到磁盘(重启不丢记忆))
人工智能·学习·faiss
童话名剑6 小时前
序列模型与集束搜索(吴恩达深度学习笔记)
人工智能·笔记·深度学习·机器翻译·seq2seq·集束搜索·编码-解码模型
知识分享小能手6 小时前
SQL Server 2019入门学习教程,从入门到精通,SQL Server 2019数据库的操作(2)
数据库·学习·sqlserver
java1234_小锋7 小时前
Java高频面试题:SpringBoot为什么要禁止循环依赖?
java·开发语言·面试