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类的使用介绍的更多相关文章

  1. java中FILE类常用API介绍

  2. Java 中File类的createNewFile()与createTempFile(), delete和deleteOnExit区别

    1. Java 中File类的createNewFile()与createTempFile()的区别 最近,在看代码时看到了一个方法, File.createTempFile() ,由此联想到File ...

  3. java中File类的常用方法总结

    java中File类的常用方法 创建: createNewFile()在指定的路径创建一个空文件,成功返回true,如果已经存在就不创建,然后返回false. mkdir() 在指定的位置创建一个此抽 ...

  4. Java中File类的基本用法

    File类的基本用法 java.io.File类:代表文件和目录.在开发中,读取文件.生成文件.删除文件.修改文件的属性时经常会用到此类. File类的常用构造方法:public File(Strin ...

  5. Java中File类创建文件

    只需要调用该类的一个方法createNewFile(),但是在实际操作中需要注意一些事项,如判断文件是否存在,以及如何向新建文件中写入数据等. import java.io.*; public cla ...

  6. java中File类的使用

    public class FileLei {    public static void main(String[] args) throws IOException {        //..表示上 ...

  7. java中File类的相关学习

    File类 1.关于系统路径分割符. 在Windows中,使用反斜杠“\”作为路径分割符,比如“c:\test”,但是java中反斜杠表示转义,所以需要用“C:\\test”在程序中来表示路径.还可以 ...

  8. java中File类的常用所有方法及其应用

    创建:createNewFile()在指定位置创建一个空文件,成功就返回true,如果已存在就不创建,然后返回false.mkdir()  在指定位置创建一个单级文件夹.mkdirs()  在指定位置 ...

  9. java中File类中list()和listFiles()方法区别

    list()和listFiles()方法区别: 1.返回值类型不同:前者为String数组,后者为File对象数组 2.数组中元素内容不同:前者为string类型的[文件名](包含后缀名),后者为Fi ...

随机推荐

  1. POJ-1258-Agri Ned

    链接:https://vjudge.net/problem/POJ-1258#author=fuxianda 题意: 有n个农场,已知这n个农场都互相相通,有一定的距离,现在每个农场需要装光纤,问怎么 ...

  2. [ZPG TEST 114] 括号匹配【树分治 点分治 括号序列】

    1.      括号匹配   有一棵树,每个节点上都有一个括号(左括号或者右括号).有多少个有序点对(u, v)从u到v的路径上的节点构成的字符串是一个合法的括号匹配?(我们称这样的点对是合法的) 输 ...

  3. Codeforces Round #390 (Div. 2) A

    One spring day on his way to university Lesha found an array A. Lesha likes to split arrays into sev ...

  4. 左右两个Select列表框交换数据的JS

    <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN"> <HTML> <HEAD ...

  5. hdu4419Colourful Rectangle

    链接 分别求出7种颜色覆盖的面积. 做法:每种颜色设定一个标号,以二进制表示R:100 G:010 B:001 .这样很明显可以知道RG:110 GB:011 以此类推. 求解时,需要开一个二维标记数 ...

  6. 关于php和docker

    Docker在PHP项目开发环境中的应用 http://www.wolonge.com/zhuanlan/detail/117441 Docker在PHP项目开发环境中的应用 http://linux ...

  7. 关于RegExp的一些使用的练习(代码加注释)

    <!DOCTYPE html> <html> <head> <title>title</title> <meta charset=&q ...

  8. google kickstart 2018 round D A Candies

    思路: 对于small数据,由于求和及奇数数量两个限制条件均满足区间单调性,可以直接使用尺取法(滑动窗口法)求解. 对于large数据,奇数数量依然是满足区间单调性的.首先使用尺取法,找到所有满足奇数 ...

  9. arcgis jsapi接口入门系列(5):几何(点线面)基本操作

    点 point: function () { //通过wkt生成点 //wkt,代表点的坐标 let wkt = "POINT(113.566806 22.22445)"; //w ...

  10. Jquery AJAX使用踩坑小记

    在使用jquery ajax时,如果其参数是一个json对象,将此参数使用$('#dd').data(param)绑定到一个元素上, 在使用$('#dd').bind('click',function ...