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

存储和读写方案

认识File在这里插入图片描述

文件存储在磁盘中,而不是内存中。断电或者程序终止,文件还在。
广义的文件包括文件夹。
不能读写文件里面存储的数据,所以怎么办?
用IO流

功能

操作文件

在这里插入图片描述

在这里插入图片描述
这两种斜杠方式都可以。
在这里插入图片描述
在这里插入图片描述

相对路径不带盘符,默认在工程下,也可以用绝对路径

在这里插入图片描述
建议用相对路径
在这里插入图片描述
现在创建一个File对象,这个文件实际上不存在。

在这里插入图片描述
创建文件
在这里插入图片描述
创建文件夹
在这里插入图片描述在这里插入图片描述
在这里插入图片描述

在这里插入图片描述
这里应为能删除空文件夹,不能删除非空文件夹。
可以删除空文件
在这里插入图片描述
注意是一级目录
在这里插入图片描述
在这里插入图片描述
上面的删除是可以真的删除掉。
在这里插入图片描述

文件搜索

需求:在D盘找到某个文件
分析:
1.拿到一级,遍历一级文件对象,判断是不是文件.
2.是文件判断是不是想要的.
3.不是文件,返回1

package com.itheima.demo2recursion;import java.io.File;public class FileSearchTest4 {public static void main(String[] args) {// 目标:完成文件搜索。找出D:盘下的QQ.exe的位置。try {File dir = new File("D:/");searchFile(dir , "QQ.exe");} catch (Exception e) {e.printStackTrace();}}/*** 搜索文件* @param dir 搜索的目录* @param fileName 搜索的文件名称*/public static void searchFile(File dir, String fileName) throws Exception {// 1、判断极端情况if(dir == null || !dir.exists() || dir.isFile()){return; // 不搜索}// 2、获取目录下的所有一级文件或者文件夹对象File[] files = dir.listFiles();// 3、判断当前目录下是否存在一级文件对象,存在才可以遍历//不为空指针是怕没有权限,对应上文注意事项第二条//长度大于01对应第二条if(files != null && files.length > 0){// 4、遍历一级文件对象for (File file : files) {// 5、判断当前一级文件对象是否是文件if(file.isFile()){// 6、判断文件名称是否和目标文件名称一致if(file.getName().contains(fileName)){System.out.println("找到目标文件:" + file.getAbsolutePath());Runtime r = Runtime.getRuntime();r.exec(file.getAbsolutePath());//启动这个程序//执行时候的异常,原因是担心路径写错.因此把异常抛给上一级}}else{// 7、如果当前一级文件对象是文件夹,则继续递归调用searchFile(file, fileName);}}}}
}

http://www.mrgr.cn/news/64732.html

相关文章:

  • 数字信号处理:自动增益控制(AGC)
  • 1-ARM Linux驱动开发-MIO控制
  • OceanBase V4.3.3,首个面向实时分析场景的GA版本发布
  • 解决CentOS 7环境下VNC出现乱码问题
  • 【鸿蒙新闻】10月29日警用鸿蒙开发者大会在北京胜利召开,开启智慧应用新时代!
  • 报错:npm : 无法加载文件 C:\Program Files\nodejs\npm.ps1,因为在此系统上禁止运行脚本。
  • 讲讲RabbitMQ 性能优化
  • 清华双臂机器人扩散大模型RDT:先预训练后微调,支持语言、图像、动作多种输入
  • 动态规划-两个数组的dp问题——1143.最长公共子序列
  • Java 中的 堆栈(Stack)
  • 海滨学院班级记忆档案:设计与技术实现
  • 单例模式四种写法
  • C#/.NET/.NET Core学习路线集合,学习不迷路!
  • 使用贪心策略求解糖果罐调整次数
  • Foods
  • 三层交换实现不同VLAN之间设备的互通
  • js中多let与var
  • 【016C】基于51单片机电子秤(LCD1602显示)
  • SpringBoot框架下:构建专业在线试题库
  • 找不到msvcp120.dll,无法继续执行代码的五种解决方法一步一步指南
  • 数据结构与算法——Java实现 52.力扣98题——验证二叉搜索树
  • spring-boot(thymeleaf前端框架,简单了解)、( 跨域请求)
  • 【LwIP源码学习5】网口接收数据处理过程
  • 数据挖掘(七)
  • 【设计模式系列】总览
  • ‌【元素周期表】氢