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. 命令行视频下载工具 you-get 和 youtube-dl

    you-get 和 youtube-dl 都是基于 Python 的命令行媒体文件下载工具,完全开源免费跨平台.用户只需使用简单命令并提供在线视频的网页地址即可让程序自动进行嗅探.下载.合并.命名和清 ...

  2. DB2 错误码解析

    DB2 错误代码大全——SQLSTATE 消息   SQLSTATE 消息本节列示 SQLSTATE 及其含义.SQLSTATE 是按类代码进行分组的:对于子代码,请参阅相应的表. 表 2. SQLS ...

  3. 使用Yeoman 创建 angular应用

    一.安装 Yeoman npm install yo -g 如果提示当前nodejs版本和npm版本太低,先升级下再安装yeoman. 安装成功后,默认只有webapp和Mocha这两个生成器. 二. ...

  4. memcache学习

    1.memcache和memcached区别 Memcache是该系统的项目名称,Memcached是该系统的主程序文件(字母d可以理解为daemon),以守护程序方式运行于一个或多个服务器中,随时接 ...

  5. qq登录,新浪微博登录接口申请过程中遇到的问题

    接口申请下来了,开发很容易的,参数传到就可以了.以前就做过这方面的开发,但是申请还是第一次,网上有关这方面的东东不是很多,所以记录一下申请过程. 1,qq登录接口申请 申请地址是:http://con ...

  6. 单线程异步回调机制的缺陷与node的解决方案

    一.node单线程异步的缺陷: 单线程异步的优点自然不必多说,node之所以能够如此快的兴起,其单线程异步回调机制相比于传统同步执行编程语言的优势便是原因之一.然而,开发一个node程序,其缺陷也是不 ...

  7. P3375 【模板】KMP字符串匹配(全程注释,简单易懂)

    题目描述 如题,给出两个字符串s1和s2,其中s2为s1的子串,求出s2在s1中所有出现的位置. 为了减少骗分的情况,接下来还要输出子串的前缀数组next.如果你不知道这是什么意思也不要问,去百度搜[ ...

  8. SVN上传文件过程中出现错误“不知道这样的主机”

    在虚拟机中安装完成VisualSVN Server,并且在本地客户端也安装好了TortoiseSVN,在上传文件到服务器的过程中出现错误“不知道这样的主机”,如下图: 地址https://admin- ...

  9. 十四个关于ASP.NET基础知识问答(C#版)

    这是一些ASP.NET很基础的东西,希望对ASP.NET爱好者特别是刚刚入门的朋友有所帮助虽然示例代码是C#.NET,但是不影响VB.NET朋友的参考.好,继续往下看吧! 1.ASP.NET能在那些系 ...

  10. 快速生成导入亿级测试数据到sqlserver

    如果采用insert into 循环一条一条插入速度比较慢 可以先将数据插入临时表,然后在临时表数据量到达批量插入的行数时执行例如:目标表 (col1,col2,col3) --根据目标表结构复制一个 ...