Java中File类的使用介绍
1、创建File对象的几种方式
import java.io.File;
public class MyFile {
public static void main(String[] args) {
File file1 = new File("a.txt"); // 相对路径
File file2 = new File("E:\\image\\1.jpg"); // 绝对路径
File file3 = new File("E:\\image");
// getPath():获取构造方法的参数
System.out.println(file1.getPath());
System.out.println(file2.getPath());
System.out.println(file3.getPath());
}
}
输出:
a.txt
E:\image\1.jpg
E:\image
由于我使用的是eclipse,这里的相对路径指的是java工程目录,就是和src平级的目录。getPath()方法获取的是构造方法的参数,传什么获取什么。
import java.io.File;
public class MyFile {
public static void main(String[] args) {
String parentDir = "E:\\image"; // 父目录
String childFile = "1.jpg"; // 子文件
File file = new File(parentDir, childFile); // 根据父目录和子文件创建File对象
String childDir = "aaa"; // 子目录
File dir = new File(parentDir, childDir); // 根据父目录和子目录创建File对象
System.out.println(file.getName()); // getName()获取文件名
System.out.println(dir.getName()); // getName()获取目录名
}
}
输出:
1.jpg
aaa
getName()方法获取文件名,如果是个目录,就输出目录名。
import java.io.File;
public class MyFile {
public static void main(String[] args) {
File parentFile = new File("E:\\image");
String childFile = "1.jpg";
//根据父File对象和子文件(或者子目录)创建File对象
File file = new File(parentFile,childFile);
System.out.println(file.getName());
}
}
输出:
1.jpg
2、常用方法介绍
|
exists() 判断文件是否存在,存在true,否则false getName() 获取文件名或者目录名 getAbsolutePath() 获取文件或者目录的绝对路径 getPath() 获取构造方法传入的路径 length() 获取文件的字节个数 lastModified() 获取文件最后修改时间,返回1970-1-1 00:00:00到最后修改时间的毫秒数 createNewFile() 如果不存在此文件,则创建,否则不创建 mkdir() 如果此单级目录不存在,则创建,否则不创建。 mkdirs() 如果此多级或者单级目录不存在,则创建,否则不创建 delete() 删除文件或者目录,如果是目录不为空,则删除失败 renameTo(file) 文件重命名,路径相同就是改名,路径不同就是剪贴并新建文件 list() 获取当前目录下的所有文件或者文件夹名称,返回String数组 listFiles() 获取指定目录下的所有文件或者文件夹,返回File数组 |
3、案例1---获取指定目录下的jpg文件
import java.io.File;
public class MyFile {
public static void main(String[] args) {
File file= new File("E:\\image");
File[] listFiles = file.listFiles();
for (File f : listFiles) {
if(f.isFile() && f.getName().endsWith(".jpg")) {
System.out.println(f.getAbsolutePath());
}
}
}
}
输出:
E:\image\1.jpg
E:\image\2.jpg
E:\image\222.jpg
E:\image\aaa.jpg
E:\image\桌面.jpg
4、案例2---获取指定目录以及子目录下所有文件
import java.io.File;
public class MyFile {
public static void main(String[] args) {
File file = new File("E:\\test");
printFile(file,"");
}
public static void printFile(File file, String str) {
File[] listFiles = file.listFiles();
for (File subFile : listFiles) {
if(subFile.isDirectory()) {
System.out.println(str + ">" + subFile.getName());
printFile(subFile,str + " ");
}
else {
System.out.println(str + ">" + subFile.getName());
}
}
}
}
输出:
>123.txt
>aaa
>vvv.docx
>xxx.xlsx
>bbb
>eee
>zzz
>paper.pptx
>资料.txt
Java中File类的使用介绍的更多相关文章
- java中FILE类常用API介绍
- Java 中File类的createNewFile()与createTempFile(), delete和deleteOnExit区别
1. Java 中File类的createNewFile()与createTempFile()的区别 最近,在看代码时看到了一个方法, File.createTempFile() ,由此联想到File ...
- java中File类的常用方法总结
java中File类的常用方法 创建: createNewFile()在指定的路径创建一个空文件,成功返回true,如果已经存在就不创建,然后返回false. mkdir() 在指定的位置创建一个此抽 ...
- Java中File类的基本用法
File类的基本用法 java.io.File类:代表文件和目录.在开发中,读取文件.生成文件.删除文件.修改文件的属性时经常会用到此类. File类的常用构造方法:public File(Strin ...
- Java中File类创建文件
只需要调用该类的一个方法createNewFile(),但是在实际操作中需要注意一些事项,如判断文件是否存在,以及如何向新建文件中写入数据等. import java.io.*; public cla ...
- java中File类的使用
public class FileLei { public static void main(String[] args) throws IOException { //..表示上 ...
- java中File类的相关学习
File类 1.关于系统路径分割符. 在Windows中,使用反斜杠“\”作为路径分割符,比如“c:\test”,但是java中反斜杠表示转义,所以需要用“C:\\test”在程序中来表示路径.还可以 ...
- java中File类的常用所有方法及其应用
创建:createNewFile()在指定位置创建一个空文件,成功就返回true,如果已存在就不创建,然后返回false.mkdir() 在指定位置创建一个单级文件夹.mkdirs() 在指定位置 ...
- java中File类中list()和listFiles()方法区别
list()和listFiles()方法区别: 1.返回值类型不同:前者为String数组,后者为File对象数组 2.数组中元素内容不同:前者为string类型的[文件名](包含后缀名),后者为Fi ...
随机推荐
- android开发学习 ------- 仿QQ侧滑效果的实现
需要做一个仿QQ侧滑删除的一个效果: 一开始是毫无头绪,百度找思路,找到 https://blog.csdn.net/xiaxiazaizai01/article/details/53036994 ...
- MD5加密的方法
#region MD5加密 /// <summary> /// MD5加密 /// </summary> /// <param name="strPwd&quo ...
- 当获取相似数据时,使用不同方法调用不同sp,但是使用同一个方法去用IIDataReader或者SqlDataReader读取数据时需要判断column name是否存在。
/// <summary> /// Checks clumn Name /// </summary> /// <param name="reader" ...
- React Native开发时devices offline和手机不能晃动的处理
1. adb device 显示 devices offline 可能重启adb server: $ adb kill-server $ adb start-server 2. 华为等手机不能 晃动显 ...
- git更新到远程服务器代码
git commit -a 在vi里输入一些内容 wq退出,git pull, git push
- Android属性系统简介
1.简介 在android 系统中,为统一管理系统的属性,设计了一个统一的属性系统.每个属性都有一个名称和值,他们都是字符串格式.属性被大量使用在Android系统中,用来记录系统设置或进程之间的信息 ...
- php关于精准计算的模块 BCMath
Php: BCMath bc是Binary Calculator的缩写.bc*函数的参数都是操作数加上一个可选的 [int scale],比如string bcadd(string $left_ope ...
- 求矩阵的n次方 c语言实现
矩阵的n次方,比较容易理解的想法是递归. 思路是这样的,把n分成两部分,当n是偶数的时候,即为左右两边的乘积,如果n是奇数,即为左右两边的乘积再乘a ) matrixn())^*a else matr ...
- org.thymeleaf.exceptions.TemplateInputException: Error resolving template "/home/index2", template might not exist or might not be accessible by any of the configured Template Resolvers
org.thymeleaf.exceptions.TemplateInputException: Error resolving template "/home/index2", ...
- struts2默认拦截器defaultStack
第一次使用Struts2.3.20,前台页面向后台传值,怎么总是提示值为null,查找半天原来是struts配置文件的action中忘记引入defaultStack拦截器了,所以即使Action中万事 ...