Java中文件File相关知识
Java中File文件相关知识
File类概述
- File类在包java.io.File下,代表操作系统的文件对象(文件/文件夹)
- File类提供了诸如 : 定位文件 获取文件本身的信息 删除文件 创建文件 (文件夹)等功能
File类创建对象
- 绝对路径 : 从盘符开始
File files = new File("D:\\resources\\a.txt");
- 相对路径 : 不带盘符 默认直接到当前工程下的目录寻找文件
File files = new File("模块名\\a.txt");
方法名称 | 说明 |
---|---|
public File(String pathname) | 根据文件路径创建文件对象 |
public File(String parent,String child) | 从父路径名字字符串和子路径名字字符串创建文件对象 |
public File(File parent,String child) | 根据父路径对应文件对象和子路径名字符串创建文件对象 |
//绝对路径 : 带有盘符 后面跟的是文件的具体位置File f = new File("C:/Users/Administrator/Pictures/Camera Roll/desk.jpg"); //采用 /File f = new File("C:\\Users\\Administrator\\Pictures\\Camera Roll\\desk.jpg"); // 采用\\System.out.println(f.length()); //获取文件的大小 单位是 字节
//相对路径 : 不带盘符 直接在对应工程下找文件 File f1 = new File("File-io-app/src/a.txt");System.out.println(f1.length()); // 获取文件的大小 字节大小
//File创建对象,可以是文件也可以是文件夹File f = new File("D:\resources");System.out.println(f3.exists()); //判断这个文件夹是否存在
File类常用API
判断文件类型 获取文件信息
File类的判断文件类型 获取文件信息功能
方法名称 | 说明 |
---|---|
public boolean isDirectory() | 测试此路径名表示的File是否为文件夹 |
public boolean isFile() | 测试此路径名表示的File是否为文件 |
public boolean exists() | 测试此路径名表示的File是否存在 |
public String getAbsolutePath() | 返回此路径名的绝对路径字符串 |
public String getPath() | 将此路径名转换为路径名字字符串 |
public String getName() | 返回此路径名表示的文件或文件夹的名称 |
public long lastModified() | 返回文件最后修改的时间毫秒值 |
//创建文件File f = new File("G:/AAA/aaa.txt");System.out.println(f.length());//a.获取文件的绝对路径String absolutePath = f.getAbsolutePath();System.out.println(absolutePath);//b.获取文件定义的时候使用的路径File f1 = new File("File-io-app/src/aaa.txt");System.out.println(f1.length());String path = f1.getPath();String absolutePath1 = f1.getAbsolutePath();System.out.println(absolutePath1);System.out.println(path);//c.获取文件的名称,带后缀String name = f1.getName();System.out.println(name);//d.获取文件的大小,字节数System.out.println(f1.length());//e.获取文件的最后修改时间long l = f1.lastModified();String format = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(l);System.out.println(format);//f.判断文件是文件还是文件夹System.out.println(f1.isFile()); //trueSystem.out.println(f1.isDirectory()); //falseFile f2 = new File("D:");System.out.println(f2.isDirectory()); // true
创建文件 删除文件功能
File类创建文件的功能
方法名称 | 说明 |
---|---|
public boolean createNewFile() | 创建一个新的空的文件 |
public boolean mkdir() | 只能创建一级文件 |
public boolean mkdirs() | 可以创建多级文件夹 |
//1.创建一个空的新的文件 createNewFile 几乎不用File f = new File("File-io-app/src/aaa1.txt");System.out.println(f.createNewFile());//2.mkdir创建一级目录File f1 = new File("D:/Code/aaa2");System.out.println(f1.mkdir()); //因为已经存在了 所以不能创建//3.创建多级目录File f2 = new File("D:/Code/aaa/bbb/ccc/ddd");System.out.println(f2.mkdirs());
File类删除文件的功能
方法名称 | 说明 |
---|---|
public boolean delete() | 删除由此路径名表示的文件或空文件夹 |
- delete方法直接删除不走回收站
- delete方法默认只能删除空文件夹
//4.删除文件或者空文件夹//System.out.println(f1.delete());File f3 = new File("File-io-app/src/aaa.txt");System.out.println(f3.delete());File f4 = new File("File-io-app/src/aaa1.txt");System.out.println(f4.delete());//5.只能删除空文件夹 不能删除非空文件夹File f5 =new File("D:/Code/aaa");System.out.println(f5.delete());
遍历文件夹
File类的遍历功能
方法名称 | 说明 |
---|---|
public String[] list() | 获取当前目录下的所有的"一级文件名称"到一个字符串数组中去并返回 |
public File[] listFiles() | 获取当前目录下的所有的"一级文件对象"到一个文件对象数组中去返回 |
//list() 获取文件名称File file = new File("D:/Code");String[] list = file.list();for (String s : list) {System.out.println(s);}System.out.println("=========分割线==========");//获取文件对象到数组中File[] files = file.listFiles();for (File file1 : files) {System.out.println(file1.getAbsoluteFile());}
listFiles方法注意事项
- 当调用者不存在时,返回null
- 当调用者是一个文件时,返回null
- 当调用者是一个空文件夹是,返回一个长度为0的数组
- 当调用者是一个有内容的文件夹时,将里面所有文件和和文件夹的路径放在File数组中返回
- 当调用者是一个有隐藏文件的文件夹时,将里面所有文件的文件夹的路径放在File数组中返回,包含隐藏内容
文件搜索案例
需求:
现给定一个文件目录,同时给一个文件名称,请编写程序判断该文件是否在该文件目录下.若找到了,打印出该文件的绝对路劲若没有找到,则返回提示信息示例:
给定电脑中的一个E盘,请在E盘中找出 "KwMusic.exe" 文件结果:
找到了该文件,该文件绝对路径是: E:\kuwo\kuwomusic\9.1.1.6_W1\KwMusic.exe
没有找到,提示 文件错误,操作失败
public static void searchFile(File dir, String fileName) {//判断dir是否为空if (dir != null && dir.isDirectory()) {//文件对象数组接收输入的文件夹File[] files = dir.listFiles();if (files != null && files.length > 0) {//遍历文件对象中的文件for (File file1 : files) {if (file1.isFile()) {if (file1.getName().contains(fileName)) {System.out.println("找到该文件 ,文件位于: " + file1.getAbsolutePath());}} else {searchFile(file1, fileName);}}}} else {System.out.println("文件错误 操作失败");}}
Java中文件File相关知识相关推荐
- java中的字符串相关知识整理
字符串为什么这么重要 写了多年java的开发应该对String不陌生,但是我却越发觉得它陌生.每学一门编程语言就会与字符串这个关键词打不少交道.看来它真的很重要. 字符串就是一系列的字符组合的串,如果 ...
- Java中文件File
File:文件和目录路径名的抽象表示(java.io.file) File file = new File("D://");//File(String pathname) 通过将给 ...
- file相对路径java_浅谈java 中文件的读取File、以及相对路径的问题
一.对于java项目中文件的读取 1.使用system 或是 系统的properties对象 ①直接是使用 string relativelypath=system.getproperty(" ...
- java直接调用复制文件,java中文件复制的4种方式,java文件的复制
java中文件复制的4种方式,java文件的复制 今天一个同事问我文件复制的问题,他一个100M的文件复制的指定目录下竟然成了1G多,吓我一跳,后来看了他的代码发现是自己通过字节流复制的,定义的字节数 ...
- java中文件的操作讲解
1.基本概念的理解 绝对路径:绝对路径就是你的主页上的文件或目录在硬盘上真正的路径,(URL和物理路径)例如: C:\xyz\test.txt 代表了test.txt文件的绝对路径.http://ww ...
- java中文件处理之图片_在Java 7中处理文件
java中文件处理之图片 以下是The Well-Grounded Java Developer的草稿的修改后的片段. 它使您快速了解与以前版本相比,在Java 7中操作文件要容易得多. 通过使用新的 ...
- java中文件处理之图片_Java中的文件处理
java中文件处理之图片 File Handing in java comes under IO operations. Java IO package java.io classes are spe ...
- Java中的线程基础知识
Java中的线程基础知识 1.线程概念 线程是程序运行的基本执行单元.当操作系统(不包括单线程的操作系统,如微软早期的DOS)在执行一个程序时,会在系统中建立一个进程,而在这个进程中,必须至少建立一个 ...
- 四十一、深入Java中的 File类
@Author:Runsen @Date:2020/6/6 作者介绍:Runsen目前大三下学期,专业化学工程与工艺,大学沉迷日语,Python, Java和一系列数据分析软件.导致翘课严重,专业排名 ...
- 10、java中文件的抽象表示
java中使用File类来作为文件和目录路径名的抽象表示,是对于文件或者目录本身的属性来说的,而不是针对于文件的内容. 一些关于File类基本操作的代码如下: public class FileTes ...
最新文章
- 视频码率、视频编码的原理
- VC 在CStatic控件上绘图
- php敏感字符串过滤_PHP代码审计入门:常见的危险函数和审计点
- 每天学点linux之-rmdir,cp,mv
- java技术自我_2020年Java程序员如何进行自我提升?
- qt窗口关闭退出程序_Qt5 窗口关闭信号的响应~
- python中soup_python – 使用带有UTF-8的soup.get_text()
- C#多线程编程系列(五)- 浅析C# Dictionary实现原理
- then 微信小程序_微信小程序 引入es6 promise
- dva.js 知识导图
- mysql 为什么不能安装_下载的mysql怎么无法安装
- Revip MEP二次开发之“连接弯头”
- group by 和count 联合使用问题
- linux网关管理,利用Linux打造安全的管理型网关
- 毕业设计必备案例:Python开发桌面程序——各种版本学生信息管理系统
- 有量子计算机的山西高能小说,高能小说推荐-好看的高能类小说-高能小说排行榜-七零文学...
- java缓存框架zookepper_Zookeeper分布式开源框架
- 矩阵求和c语言通俗易懂
- php 数字 字母组合,PHP生成数字字母组合或纯数字的唯一订单号
- 面向对象语法1—基础
热门文章
- 《大话数据结构(C实现)》(Yanlz+VR云游戏+Unity+SteamVR+云技术+5G+AI+软件架构设计+框架编程+数据结构+链表+栈+队列+二叉树+冒泡排序+KMP模式+立钻哥哥+==)
- 蒲公英超级签名原理(手动做超级签名)
- 奋斗在制造业----CAE行业感想
- 如何在Google Play 当中使用ASO?google play aso
- 为什么便利店晚上顾客很少?还要24小时营业?
- nc系统显示不能连接到服务器,用友U8 用友登录时提示不能连接到服务器。
- ISBN书号查询图书数据
- 勾股定理算斜边用计算机怎么按,三角形斜边(直角三角形斜边计算器)
- 笔记本电脑键盘个别键失灵的修复方法
- 线性代数----逆矩阵的性质和求法