Java学习之File类理解
File类是io包中唯一代表磁盘文件本身的对象。File类定义了一些与平台无关的方法来操作文件,可以通过调用File类中的方法,实现创建、删除、重命名文件等。File类的对象主要用来获取文件本身的一些信息,如文件所在目录、文件的长度、文件读写权限等。数据流可以将数据写入到文件中,而文件也是数据流最常用的数据媒体。
1、文件的创建与删除
可以使用File类创建一个文件对象,File类构造方法:
(1)File(String pathname)
该构造方法通过将给定路径名字字符串转换为抽象路径来创建一个新File实例。
new File(String pathname)
pathname:是指路径名(包含文件名)
File file = new File("D:/test.txt")或者 File file =new File("D:\\test.txt")
(2)File(String parent ,String child)
该构造方法根据定义的父路径和子路径字符串(包含文件名)创建一个新的File实例。
(3)File(File f ,String child)
该构造方法根据parent抽象路径名和child路径名字符串创建一个新File实例。
使用File类创建一个文件对象:File file = new File("D:/myword","word.txt");
如果D:/myword目录中没有名称为word的文件,File类对象可通过调用createNewFile()方法创建一个名称为word.txt的文件;如果word.txt文件存在,可以通过文件对象的delete()方法将其删除。
import java.io.File;
import java.io.IOException;
public class FileTest {
public static void main(String[] args) {
File file = new File("D:\\test","test6.txt");
if(file.exists()){
file.delete() ;
System.out.println("文件已删除!");
}else {
try {
file.createNewFile() ;
System.out.println("文件已创建!");
} catch (IOException e) {
e.printStackTrace();
}
}
}
}
2、获取文件信息
File类提供了很多用于获取文件本身的一些信息,常用方法:
| 方法 | 描述 |
| String getName() | 获取文件的名称 |
| boolean canRead() | 判断文件是否是可读的 |
| boolean canWrite() | 品判断文件是否可被写入 |
| boolean exits() | 判断文件长度是否存在 |
| int length() | 获取文件的长度(以字节为单位) |
| String getAbsolutePath() | 获取文件的绝对路径 |
| String getParent() | 获取文件的父路径 |
| boolean isFile() | 判断此抽象路径名表示的文件是否为普通文件 |
| boolean isDirectory() | 判断此抽象路径名表示的是否是一个目录 |
| boolean isHidden | 判断文件是否是隐藏文件 |
| long lastModified() | 获取文件最后修改时间 |
| Boolean canExecute() |
测试应用程序是否可以执行此抽象路径名表示的文件。
|
| boolean createNewFile() | 当且仅当具有该名称的文件尚不存在时,原子地创建一个由该抽象路径名命名的新的空文件。 |
| boolean delete() | 删除由此抽象路径名表示的文件或目录。 |
| File[] listFiles() | 返回一个抽象路径名数组,表示由该抽象路径名表示的目录中的文件。 |
| String[] list() | 返回一个字符串数组,命名由此抽象路径名表示的目录中的文件和目录。 |
| boolean mkdirs() | 创建由此抽象路径名命名的目录,包括任何必需但不存在的父目录。可创建多层文件包 |
| boolean mkdir() | 创建由此抽象路径名命名的目录。只能创建一层文件包 |
| boolean reNameTo(File dest) | 重命名由此抽象路径名表示的文件。 |
| boolean setReadOnly() |
标记由此抽象路径名命名的文件或目录,以便只允许读取操作。
|
| boolean setWritable(boolean writable) |
一种方便的方法来设置所有者对此抽象路径名的写入权限。
|

Java学习之File类理解的更多相关文章
- Java学习:File类
Java学习:File类 File类的概述 重点:记住这三个单词 绝对路径和相对路径 File类的构造方法 File类判断功能的方法 File类创建删除功能的方法 File类获取(文件夹)目录和文件夹 ...
- java学习一目了然——File类文件处理
java学习一目了然--File类文件处理 File类(java.io.File) 构造函数: File(String path) File(String parent,String child) F ...
- Java学习笔记——File类之文件管理和读写操作、下载图片
Java学习笔记——File类之文件管理和读写操作.下载图片 File类的总结: 1.文件和文件夹的创建 2.文件的读取 3.文件的写入 4.文件的复制(字符流.字节流.处理流) 5.以图片地址下载图 ...
- Java学习笔记-File类的基本方法
要渐渐养成写博客的习惯-----> 前段时间看Mars的java中的I/O流没怎么懂,发现I/O流好难啊.今天重新看一遍其他教学,还有书籍,做些笔记,记录下每天的学习生活. File类的一些方法 ...
- Java学习:File类中的过滤器接口
javaIO类的File类应用:过滤器接口 FilenameFilter和FileFilter都是用来过滤文件的 例如: 过滤以.jpg或者.java结尾的文件. 通过看他们的源码: 通过使用File ...
- Java学习笔记——File类文件管理及IO读写、复制操作
File类的总结: 1.文件和文件夹的创建 2.文件的读取 3.文件的写入 4.文件的复制(字符流.字节流.处理流) 5.以图片地址下载图片 文件和文件夹 相关函数 (boolean) mkdir( ...
- Java学习之Math类理解
Math类包含用于几何和三角运算的所有浮点函数,以及一些用于通用目的的方法.Math类定义了两个double常量:E(约等于2.72)和PI(约等于3.14) 1.三角函数 表中的方法接收double ...
- Java基础之File类的使用
Java基础之File类的使用 1.File类的构造方法和常用方法 2.对File中listFile(FileNameFilter name)学习 3.与File文件类相关的实现 File类的构造方法 ...
- Java学习:Properties类
Java学习:Properties类 学习目标 认识properties文件,理解其含义,会正确创建properties文件. 会使用java.util.Properties类来操作propertie ...
随机推荐
- Android课程设计第一天Android Studio安装
注意:课程设计只为完成任务,不做细节描述~ 学校有一个Android的课设,所以顺便把Android Studio安装了上去. 实际上安装过程并不复杂,只有几个地方需要注意~ 安装包可以去http:/ ...
- 生产环境中nginx既做web服务又做反向代理
一.写对于初入博客园的感想 众所周知,nginx是一个高性能的HTTP和反向代理服务器,在以前工作中要么实现http要么做反向代理或者负载均衡.尚未在同一台nginx或者集群上同时既实现HTTP又实现 ...
- nodejs的mysql模块学习笔记(结合业务)
1. 包官网地址 https://www.npmjs.com/package/mysql#install https://www.oschina.net/translate/node-mysql-tu ...
- UISegmentedControl去掉背景色与UIScrollView联动
UISegmentControl分段控制器是UIKit框架提供的一组按钮栏,提供多个可选的按钮,只能激活其中的一个,响应事件.主要用来在同一层次重要性下不同的信息展示或者不同的界面展示之间切换.例如手 ...
- H+后台主题UI框架---整理(二)
本篇文章是针对H+后台主题UI框架的整理的第二部分.主要只有一个point.如下: 其代码如下: <div class="ibox float-e-margins"> ...
- IO 优化
转自 BlackJack_ #define fastcall __attribute__((optimize("-O3"))) #define IL __inline__ __at ...
- 毕业设计:主界面(ViewPager + FragmentPagerAdapter)
一.主要思路 应用程序的主界面包含三个部分:顶部标题栏.底部标识栏和中间的内容部分.顶部标题栏内容基本不变,用于显示当前模块或者整个应用的名称:底部既能标识出当前Page,又能通过触发ImageBut ...
- 使用 Azure ARM 部署Word Press 遇到 Extension节点 扩展的问题
在使用Azure ARM模式部署wordpress,将php网站压缩成zip的形式在DefaultTemplate模板中已扩展的形式实现安装 遇到的问题总结: 1.开始在sites节点中,resour ...
- IOS存储目录documents你在哪里啊
iphone沙箱模型的有四个文件夹,分别是什么,永久数据存储一般放在什么位置,得到模拟器的路径的简单方式是什么. documents,tmp,app,Library. (NSHomeDirectory ...
- Oracle AWR报告的生成
生成AWR报告需要dbms_workload_repository包的权限. 一.以oracle用户登录到数据库服务器 二.进入SQLPLUS 三.执行脚本 @?/rdbms/admin/awrrpt ...