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 ...
随机推荐
- Jmeter之Json Path Extractor 接受上一个请求的响应参数
最近在使用Jmeter进行接口测试,被一个问题困扰了很久,就是第二个请求如何接收上一个请求响应中的参数,刚开始尝试着用网上普遍说的正则表达式,长了了N多次之,都没有达到我想要的效果,被整的够惨,于是, ...
- 洛谷 P1072 Hankson 的趣味题 || 打质数表的分解质因数
方法就是枚举,根据b0和b1可以大大减小枚举范围,方法类似这个http://blog.csdn.net/hehe_54321/article/details/76021615 将b0和b1都分解质因数 ...
- 1-20StringBuffer简介
StringBuffer是一个字符串缓冲区,如果需要频繁的对字符串进行拼接时,建议使用StringBuffer. 工作原理 StringBuffer的底层是char数组,如果没有明确设定,则系统会默认 ...
- word-wrap与word-break为长单词换行
如果你遇到长串英文单词或者url换行的问题,这时候就需要用到word-wrap与word-break这2个css属性啦. word-wrap:break-word;长单词与url地址自动换行. wor ...
- [转]EntityFramework之领域驱动设计实践
本文转自:http://www.cnblogs.com/daxnet/archive/2010/11/02/1867392.html Entity Framework之领域驱动设计实践 EntityF ...
- What is Scalability?
Scalability is a system's ability to process more workload, with a proportional increase in system r ...
- IOS文件下载
NSArray *documentPaths = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, ...
- upupw nginx服务器 rewrite设置
最近开始尝试使用upupw的Nginx套件做开发,感觉还挺不错的,也遇到了一些问题,决定在这里记录一下,同时也希望可以帮助到一些人. 用习惯了Apache,改用Nginx之后会有些不适应,但是咬咬牙就 ...
- 第一周作业javaee strainmap
- ChromiumWebBrowser禁止鼠标右键和拖动
在屏蔽之前先查看namespace CefSharp.WinForms内的代码 public class ChromiumWebBrowser : Control, IWebBrowserIntern ...