本文主要介绍File类在java开发中的详细用法,有需要的朋友可以参考一下。
File类简介
在Java中,File类是java.io包中唯一表示磁盘文件本身的对象。File类定义了一些独立于平台的方法来操作文件。file类主要用于获取或处理与磁盘文件相关的信息,如文件名、文件路径、访问权限和修改日期等。它还可以浏览子目录的层次结构。
File类表示关于处理文件和文件系统的信息。也就是说,File类不具备从文件中读取信息和向文件中写入信息的功能,只是描述了文件本身的属性。
File类的相关方法
1、构造方法
文件(字符串路径名)通过将给定的路径名字符串转换为抽象路径名来创建新的文件实例。
File(String parent,String child)根据指定的父路径和文件路径创建新的File对象实例。
File(File parent,String child)根据指定的父path对象和文件路径创建一个新的File对象实例。
代码实现过程
/*
-文件的构造函数
- */
公共静态void main(String[] args) {
//File(String pathname)将指定的路径名转换为File对象。
File File=new File(' D:\ \ 1 . txt ');
System.out.println(文件);
//File (stringparent,stringchild)根据指定的父路径和文件路径创建File对象。
File file1=新文件(' D:\\a ',' 1 . txt ');
system . out . println(file 1);
//File(File parent,String child)根据指定的父path对象和文件路径创建File对象。
File parent=新文件(' D:\ \ a ');
File file2=新文件(父文件,' 1 . txt ');
system . out . println(file 2);
File file3=new File(新文件(' D:\\a '),' 1 . txt ');
system . out . println(file 3);
}
运行结果
2、File类创建和删除功能
布尔create new file();当文件中不存在指定路径时创建文件,否则返回true。
Boolean mkdir()在指定的单击文件夹不存在时创建一个文件夹,否则返回true
Boolean mkdirs()但指定的多级文件夹在某一级文件夹中不存在,请创建一个多级文件夹,否则返回false。
布尔删除文件或删除单级文件夹
删除文件夹。该文件夹下不能有其他文件或文件夹。
代码实现过程
公共静态void main(String[] args)引发IOException {
File File=new File(' D:\ \ a \ \ 1 . txt ');
File file1=新文件(' 1 . txt ');
boolean flag=file 1 . create new file();
system . out . println(flag);
File file2=新文件(' b ');
布尔型flag 2=file 2 . mkdir();
system . out . println(flag);
File file3=新文件(' c \ \ d \ \ e ');
布尔型d=file 1 . mkdir();
boolean c=file 1 . mkdirs();
system . out . println(d);
system . out . println(c);
File file4=新文件(' c . txt ');
system . out . println(file 4 . mkdir());
File file5=新文件(' b ');
system . out . println(file 2 . delete());
}
运行结果
3、File类的判断功能
Boolean exists()确定指定路径的文件或文件夹是否为空。
Boolean isAbsolute()确定当前路径是否是绝对路径。
Boolean isDirectory()确定当前目录是否存在。
Boolean isFile()确定当前目录是否是文件。
Boolean isHidden()确定当前路径是否为隐藏文件。
代码实现过程
公共静态void main(String[] args)引发IOException {
//方法();
//method 2();
//method 3();
//method 4();
}
//确定文件是否存在
公共静态void方法()引发IOException {
File file=新文件(' a . txt ');
file . create new file();
布尔标志=file . exists();
system . out . println(flag);
}
//确定当前路径是否是绝对路径。
公共静态void method2()引发IOException{
File File=new File(' D:\ \ a \ \ 1 . txt ');
boolean flag=file . isab solute();
system . out . println(flag);
}
//确定当前是文件夹还是文件
公共静态void method3()引发IOException{
File file=新文件(' 1 . txt ');
File file1=新文件(' b ');
file 1 . mkdir();
布尔标志=file . is directory();
布尔型flag 2=file 1 . is file();
system . out . println(flag);
system . out . println(flag 2);
}
//确定当前路径是否为隐藏文件。
公共静态void方法4()引发IOException{
File File=新文件(' D:\ \ a \ \ 1。txt’);
系统。出去。println(文件。是hidden());
}
运行结果
方法()
方法2()
方法3()
方法4()
4、File类的获取功能和修改名字功能
文件getAbsoluteFile()获取文件的绝对路径,返回文件对象
字符串getAbsolutePath()获取文件的绝对路径,返回路径的字符串
字符串getParent()获取当前路径的父级路径,以字符串形式返回该父级路径
字符串getName()获取文件或文件夹的名称
字符串获取路径()获取文件对象中封装的路径
long lastModified()以毫秒值返回最后修改时间
长长度()返回文件的字节数
布尔重命名(文件目标)将当前文件对象所指向的路径修改为指定文件所指向的路径
代码实现过程:
公共静态void main(String[] args)引发IOException {
//方法();
//方法2();
//方法3();
//方法4();
}
公共静态空的方法(){
File File=新文件(' D:\ \ a \ \ 1。txt’);
文件file1=新文件(' 1 .txt’);
//以文件对象返回的形式返回当前文件对象所指向的绝对路径
系统。出去。println(文件1。get absolute file());
//返回文件对象所指向的绝对路径
系统。出去。println(文件1。getabsolutepath());
}
公共静态void方法2()引发IOException {
文件file=新文件(' a . txt ');
文件file1=新文件(' b ',' c . txt ');
系统。出去。println(文件1。创建新文件());
文件父级=新文件(' b ');
文件file2=新文件(父文件,' c . txt ');
如果(!parent.exists()){
父母。mkdirs();
}
系统。出去。println(文件2。创建新文件());
系统。出去。println(文件2。get parent());
系统。出去。println(文件2。获取父文件());
}
公共静态void方法3()引发IOException{
文件file=新文件(' 1 .txt’);
文件file1=新文件(' D:\ \ a \ \ 1。txt’);
文件file2=新文件(' b ');
系统。出去。println(文件。getname());
系统。出去。println(文件1。getname());
系统。出去。println(文件2。getname());
系统。出去。println(文件。getpath());
系统。出去。println(文件1。getpath());
系统。出去。println(文件2。getpath());
系统。出去。println(文件。上次修改());
日期日期=新日期(1556085068524 l);
系统。出去。打印日期。tolocalestring());
系统。出去。println(文件。length());
系统。出去。println(文件2。length());
}
公共静态void方法4()引发IOException{
文件file=新文件(' a . txt ');
文件file1=新文件(' e . txt ');
系统。出去。println(文件。重命名为(文件1));
}
运行结果
方法()
方法2()
方法3()
方法4()
5、File 类的其他获取功能
string[]list();以字符串的形式返回当前路径下所有的文件和文件夹的名称
文件[]列表文件以文件对象的形式返回当前路径下的所有文件和文件夹名称
静态文件[]列表根()获取计算机中的所有盘符
代码实现过程
公共静态void main(String[] args) {
//方法();
//方法2();
//方法3();
}
公共静态空的方法(){
文件file=新文件(' b ');
文件file1=新文件(' D:\ \ QQ \ \ 1916247350 ');
文件file2=新文件(' e . txt ');
string[]files=file 1。list();
for(int I=0;ifiles.lengthi ){
系统。出去。println(files[I]);
}
}
公共静态空的方法2(){
文件file=新文件(' b ');
文件file1=新文件(' D:\ \ QQ \ \ 1916247350 ');
文件file2=新文件(' e . txt ');
文件[]文件=文件1。列出文件();
对于(文件文件3:文件){
系统。出去。println(文件3。getname());
}
}
公共静态空的方法3(){
file[]files=file。列出根();
对于(文件文件:文件){
System.out.println(文件);
}
}
运行结果
方法()
方法2()
方法(3)
练习
1、输出指定目录下的所有java文件
公共静态void main(String[] args) {
File File=new File(' D:\ \ IDEA \ \ IDEA program ');
方法(文件);
}
公共静态空的方法(文件文件){
//判断文件是够是目录文件
if (file.isDirectory()){
file[]files=file。列出文件();
对于(文件文件1:文件){
//判断是否为文件
if (file1.isFile()){
//判断文件是否是以Java。语言(一种计算机语言,尤用于创建网站)结尾的文件
if (file1.getName().endsWith(.java')){
系统。出去。println(文件1。getname());
}
}else if (file1.isDirectory()){
//回调,遍历文件一
方法(文件1);
}
}
}
}
运行结果
2、删除指定的目录(包括子目录)
公共静态void main(String[] args) {
File file=新文件(' D:\ \ a ');
方法(文件);
}
//删除指定目录中的文件
公共静态void方法(文件file){
//删除您自己的所有子文件和子目录
//获取子文件和子目录
if (file.isDirectory()){
file[]files=file . list files();
for(文件file1 : files) {
if (file1.isFile()){
system . out . println(file 1 . getname());
//杀了它
file 1 . delete();
}else if (file1.isDirectory()){
//继续查看
方法(文件1);
}
}
//自杀
system . out . println(file . getname());
file . delete();
}
}
代码运行结果
本文详细介绍了File类在java开发过程中的用法。有关File类用法的更多信息,请参考下面的相关链接。
郑重声明:本文由网友发布,不代表盛行IT的观点,版权归原作者所有,仅为传播更多信息之目的,如有侵权请联系,我们将第一时间修改或删除,多谢。