当前位置: 首页 > backend >正文

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、字符流

明天继续,,,

http://www.xdnf.cn/news/15900.html

相关文章:

  • pyhton基础【27】课后拓展
  • 【Linux】3. Shell语言
  • 深度相机的工作模式(以奥比中光深度相机为例)
  • SQL Server(2022)安装教程及使用_sqlserver下载安装图文
  • 《计算机网络》实验报告四 TCP协议分析
  • 0719代码调试记录
  • IsaacLab学习记录(四)
  • Milvus Dify 学习笔记
  • 题单【循环结构】
  • 基于单片机出租车计价器设计
  • 30天打牢数模基础-决策树讲解
  • 【C语言】字符串与字符函数详解(上)
  • C++ 并发 future, promise和async
  • 数位 dp
  • 「Java案例」利用方法打印乘法表
  • WPF学习笔记(28)Interaction.Triggers的意义与使用方式
  • dify创建OCR工作流
  • NX584NX559美光固态闪存NX561NW993
  • AI(学习笔记第六课) 使用langchain进行AI开发 load documents(csv和文件夹)
  • 开源社区贡献指南:如何通过Three.js插件开发提升企业技术影响力?
  • Windows批量修改文件属性方法
  • swift-关联性/范型
  • 每日算法刷题Day50:7.20:leetcode 栈8道题,用时2h30min
  • 深度学习方法生成抓取位姿与6D姿态估计的完整实现
  • Python应用进阶DAY10--模块化编程概念(模块、包、导入)及常见系统模块总结和第三方模块管理
  • 设计模式笔记(1)简单工厂模式
  • 【图论】图的定义与一些常用术语
  • thinkphp8\guzzlehttp上传文件应用示例
  • Linux基础命令详解:从入门到精通
  • prometheus 黑盒监控和docker检测