包中比较重要且特殊的一个对象File
流操作的只有数据,数据最基本的体现形式是文件
类是用来将文件或者文件夹封装成对象,方便对文件或者文件夹的属性信息进行操作
类的常见方法:
、创建。
:在指定位置创建文件,如果该文件已经存在,则不创建,返回false,
和输出流不一样,输出流一创建就创建文件。即即使文件已经存在。
:创建目录(文件夹)
File dir=new File("dsd");dir.mkdir();只能创建一级目录
:创建多级目录
、删除。
:删除失败返回假
:程序结束时删掉文件,即使程序报错也能够删除指定文件
、判断。
:
boolean canWrite():
:文件是否存在{如果文件存在,流才可以进行操作}
:实际开发一定注意。。是否是文件
:是否否目录
exists判断。
:文件是否隐藏
:判断文件是否在绝对路径下,即使不存在,只要是绝对路径返回真
、获取信息。
String getName()
String getPath()
返回的是绝对路径中的父目录。如果获取相对路径返回空。如果相对路径中有上级目录,那么该目录就是返回结果
返回文件绝对路径
long lastModified()
long length()
:重命名
、其它
静态方法,返回文件类型数组。获取有效盘符
返回字符数组,返回某一盘符里的所有文件及文件夹的名称。调用list的
对象必须是封装了一个目录,该目录必须存在。
.java的文件。
*/
import java.io.*;
class FileDemo
{
public static void main(String[] args)
{
File file=new File("D:\\java");
String[]names=file.list(".java");
for(String s:names)
sop(s);
}
构造方法演示
public static void consMethod()
{
将sb.txt封装成File对象。可以将存在或者不存在的文件或者文件夹封装成对象。
File file=new File(sb.txt);
File file1=new File("d:\\sb2","sb1.txt");
File file0=new File("D:\\123");
File file3=new File(file0,"sb2.txt");
里封装的什么,就打印什么。。
跨平台的分隔符=\\
}
public static void sop(Object obj)
{
System.out.println(obj);
}
}
/*
需求:遍历目录下文件或者文件夹,包含文件夹中的内容
因为目录中还有目录,只要使用同一个列出目录功能的函数完成即可
再列出过程中出现的还是目录的化,还可以再次调用本功能
也就是函数自身调用自己
这种表现形式,称为递归
递归注意事件:
限定条件,相当于循环
、注意递归的次数,尽量避免内存溢出
*/
import java.io.*;
class FileForDemo
{
public static void main(String[] args)
{
File file=new File("H:\\exercise");
showDir(file);
}
public static void showDir(File dir)
{
System.out.println(dir);
File[]files=dir.listFiles();
for(File name:files)
{
if(name.isDirectory())
showDir(name);
else
sop(name);
}
}
public static void sop(Object obj)
{
System.out.println(obj);
}
}
/*
.java文件
*/
import java.io.*;
class FileFilterDemo
{
public static void main(String[] args)
{
listFilesFilterDemo();
}
返回的是该目录下的文件对象和文件夹对象[File]
public static void listFilesFilterDemo()
{
File dir=new File("D:\\java");
File[]files=dir.listFiles();
for(File name:files)
{
sop(name.getName()+":::::"+name.length());
}
}
过滤指定某目录下文件,返回的是该目录下的文件名称和文件夹名称[String]
public static void listFilterDemo()
{
File dir=new File("D:\\java");
String[]arr=dir.list(new FilenameFilter()
{
public boolean accept(File dir,String name)
{
return name.endsWith(".java");
}
});
for(String name:arr)
{
sop(name);
}
}
public static void sop(Object obj)
{
System.out.println(obj);
}
}
for file in files 不全
转载本文章为转载内容,我们尊重原作者对文章享有的著作权。如有内容错误或侵权问题,欢迎原作者联系我们进行内容更正或删除文章。
提问和评论都可以,用心的回复会被更多人看到
评论
发布评论
相关文章
-
Java基础梳理 [不全面,后续更新...]
Java基础梳理,帮助刚入坑的小伙伴快速学习和提升。
Java 集合 面向对象 编程 Java基础 -
Upload multiple files with a single file element
用一个文件域上传多个文件,无意中找到了,很不错,有空再翻译一下。
上传 休闲 upload 多个文件 一个文件域