Java学习笔记七(文件夹操作)

1.介绍

上一篇博客介绍的是java中常用的操作文件的方式,本篇博客着重讲解一下,在Java中是如何来操作文件夹的。主要是利用的是Java.IO包下面的File类,本篇博客着重讲解一下该类的构造函数和常用的方法。

2.File类的字段摘要

File类为我们提供了与系统有关的路径分割符,字段分别如下

static String pathSeparator:返回值为字符串,结果表示分号;

static char pathSeparatorChar:返回值为char类型,结果表示分号

static char separatorChar:返回值为char类型,结果表示\的路径分割符

static string separator:返回值为String类型,结果表示\的路径分割符

<span style="font-family:SimSun;font-size:18px;">package com.IO;

import java.io.File;

public class FileDemo {
	public static void main(String[] args) {
		String separator=File.separator;
		System.out.println(separator);//输出\  windows下的路径分割符号

		String pathSeparator=File.pathSeparator;
		System.out.println(pathSeparator);//输出结果为分号;

	}

}
</span>

有了这些字段,以后用的时候,就可以无关跨系统的路径分割符了。

2.File类的常用方法

1.创建一个文件

<span style="font-family:SimSun;font-size:18px;">package com.IO;

import java.io.File;
import java.io.IOException;

public class FileDemo1 {
	public static void main(String[] args){
		File file=new File("c:"+File.separator+File.separator+"1.txt");
		try {
			file.createNewFile();
		} catch (IOException e) {
			e.printStackTrace();
		}

	}

}
</span>

运行之后会在C盘有一个1.txt的文件

2.删除方法

删除方法:boolean delete(),删除File构造函数方法中封装的路径,删除成功后返回true,注意的是直接删除,不走回收站

延迟删除方法 void deleteOnExit()删除File构造方法中封装的路径,等JVM结束前删除

<span style="font-family:SimSun;font-size:18px;">package com.IO;

import java.io.File;

public class FileDemo1 {
	public static void main(String[] args){
		File file=new File("c:"+File.separator+"1.txt");
		if(file.exists()){
			file.delete();
		}else {
			System.out.println("文件不存在");
		}

	}

}
</span>

3.创建一个文件夹

用的是File类的mkdir方法

<span style="font-family:SimSun;font-size:18px;">package com.IO;

import java.io.File;

public class FileDemo1 {
	public static void main(String[] args){
		File file=new File("c:"+File.separator+"1");
		file.mkdir();
	}

}
</span>

4.列出文件下的全部目录(包括隐藏的文件)

String[] list:获取File构造方法中封装的路径下的全部文件夹和文件

File[] listFiles:返回所有文件下的目录对象,两者的返回值不同

<span style="font-family:SimSun;font-size:18px;">package com.IO;

import java.io.File;

public class FileDemo1 {
	public static void main(String[] args){
		File file=new File("c:"+File.separator+"Users");
		String[] str=file.list();
		for(String s:str){
			System.out.println(s);
		}

		File[] files=file.listFiles();
		for(File s:files){
			System.out.println(s);
		}
	}

}
</span>

5.文件过滤器

在获取指定文件夹下的指定文件时,可以采取过滤器效果,采用的是如下方法

File[] listFile(FileFilter filter):文件过滤器,可以实现想获取想要的文件

<span style="font-family:SimSun;font-size:18px;">package com.IO;

import java.io.File;
import java.io.FileFilter;

public class FileFlter {
	public static void main(String[] args) {
		File file = new File("c:" + File.separator + "1");
		// 采用匿名类的形式封装FileFilter方法
		File[] files = file.listFiles(new FileFilter() {
			// 自定义自己的过滤方法
			public boolean accept(File pathname) {
				return pathname.getName().endsWith(".txt");
			}
		});
		for (File s : files) {
			System.out.println(s);
		}
	}
}
</span>

6.File类的判断方法

~boolean exists():判断File构造方法中封装的路径是否存在

~boolean isDirectory():判断File构造方法中封装的是不是目录

~boolean isFile():判断File构造方法中封装的是不是文件

~boolean isAbslute():判断File构造方法中封装的是不是绝对路径

~boolean isHidden():判断File构造方法中封装的路径是不是隐藏属性

<span style="font-family:SimSun;font-size:18px;">package com.IO;

import java.io.File;

/*
 * 测试File的判断方法
 */
public class FileExists {
	public static void main(String[] args) {
		method();
	}

	//判断file构造方法封装的是不是绝对路径
		private static void method_4(){
			File file=new File("c:\\java");
			boolean b=file.isAbsolute();
			System.out.println(b);
		}

	//判断file构造方法封装的是不是文件
		private static void method_2(){
			File file=new File("c:\\java");
			boolean b=file.isFile();
			System.out.println(b);
		}

	//判断file构造方法封装的是不是目录
	private static void method_1(){
		File file=new File("c:\\java");
		boolean b=file.isDirectory();
		System.out.println(b);
	}

	//用来判断封装的某个路径是否存在
	private static void method(){
		File file=new File("c:\\windows");
		boolean b=file.exists();
		System.out.println(b);
	}

}
</span>

7.File类的获取方法get开头

static File[] listRoots() 返回当前系统根

String getName()
获取的是File构造方法封装的文件名或者是文件夹名,获取到的是封装的路径的最末尾的名字,文件夹,文件

String getParent() 获取的是File构造方法封装的路径的父路径,没有返回null,如果使用这个方法,返回的是String对象,可以使用String类的方法

File getParentFile()
获取的是File构造方法封装的路径的父路径,没有返回null,如果使用这个方法,返回的是File对象,可以使用File类的方法

String getPath()将File构造方法中封装的路径,变成String

String getAbsolutePath()获取File构造方法中封装的路径的绝对路径,返回String

File getAbsoluteFile()获取File构造方法中封装的路径的绝对路径,返回File

<span style="font-family:SimSun;font-size:18px;">package com.IO;

import java.io.File;

public class GetFile {
	public static void main(String[] args) {
		method_1();
	}

	private static void method_1(){
		//获得指定的文件的名称
		File file=new File("c:\\windows\\system32");
		String name=file.getName();
		//获得父级目录的对象路径
		File parentFile=file.getParentFile();
		System.out.println(parentFile.toString());
		//获取绝对路径的方法
		String absoluteFile=file.getAbsolutePath();

		System.out.println(name);
	}

	//获得系统的根目录一般就是操作系统的C D E 的盘符
	private static void method(){
		File[] filelist=File.listRoots();
		for(File o:filelist){
			System.out.println(o);
		}
	}
}
</span>

版权声明:本文为博主原创文章,未经博主允许不得转载。

时间: 2024-08-27 02:13:29

Java学习笔记七(文件夹操作)的相关文章

Java学习笔记七(目录操作)

1.介绍 上一篇博客介绍的是java中经常使用的操作文件的方式,本篇博客着重解说一下,在Java中是怎样来操作目录的.主要是利用的是Java.IO包以下的File类,本篇博客着重解说一下该类的构造函数和经常使用的方法. 2.File类的字段摘要 File类为我们提供了与系统有关的路径切割符,字段分别例如以下 static String pathSeparator:返回值为字符串,结果表示分号; static char pathSeparatorChar:返回值为char类型,结果表示分号 sta

Java学习-010-创建文件夹源代码

此文源码主要为应用 Java 创建文件目录的源码.若有不足之处,敬请大神指正,不胜感激! 创建文件夹源代码如下所示: 1 /** 2 * @function 文件操作:创建文件夹.若文件夹不存在,则级联创建文件夹:若存在则不创建. 3 * 4 * @author Aaron.ffp 5 * @version V1.0.0: autoUISelenium main.java.aaron.java.tools FileUtils.java createPath, 2015-2-2 21:03:31

树莓派学习笔记——使用文件IO操作GPIO SysFs方式

0 前言 本文描述如果通过文件IO sysfs方式控制树莓派 GPIO端口.通过sysfs方式控制GPIO,先访问/sys/class/gpio目录,向export文件写入GPIO编号,使得该GPIO的操作接口从内核空间暴露到用户空间,GPIO的操作接口包括direction和value等,direction控制GPIO方向,而value可控制GPIO输出或获得GPIO输入. Linux学习可从应用出发,先不纠结Linux驱动编写,先把Linux给玩起来. [相同与不同] 本文和[EasyARM

黑马程序员——JAVA学习笔记十一(文件操作File)

为了很方便的代表文件的概念,以及存储一些对于文件的基本操作,在java.io包中设计了一个专门的类——File类. 在File类中包含了大部分和文件操作的功能方法,该类的对象可以代表一个具体的文件或文件夹,所以以前曾有人建议将该类的类名修改成FilePath,因为该类也可以代表一个文件夹,更准确的说是可以代表一个文件路径. 1.创建文件 1)boolean java.io.File.createNewFile() throws IOException用来创建文件,如果文件存在,创建失败,返回fa

Java笔记:文件夹操作

创建目录: File类中有两个方法可以用来创建文件夹: mkdir( )方法创建一个文件夹,成功则返回true,失败则返回false.失败表明File对象指定的路径已经存在,或者由于整个路径还不存在,该文件夹不能被创建. mkdirs()方法创建一个文件夹和它的所有父文件夹. 下面的例子创建 "/tmp/user/java/bin"文件夹: CreateDir.java 文件代码: import java.io.File; public class CreateDir { public

Java学习笔记七——数组工具类Arrays

数组工具类Arrays Java提供的Arrays类里包含的一些static修饰的方法可以直接操作数组.若将里面的方法用熟的话,那开发效率会大大提高.下面介绍其中的方法. List<T> asList(T... a) 作用:将指定数组或数组元素,转换成固定大小的List. 用法: String[] strArr = { "aaa", "bbb", "vvv" }; //用法1:参数是数组引用 List<String> li

黑马程序员——JAVA学习笔记七(String类)

1,    String类一旦被初始化就不会被改变. 字符串不不能被改变,编译可以让字符串之间共享.编译器将各种字符串存放在公共的存储池子中.字符串变量指向存储池中相应的位置.实际上只有字符串常量.而+(除了常量相加)和其它方法操作的不是共享的. String s1 ="abc" ,String s2 = "abc" (他们存在公共池中),String s3 = new String ("abc"),存在堆中; 则s1== s2; s1! = s

linux —— 学习笔记(文件、文件夹操作)

目录:1.常用的文件文件夹操作 2.文件属性的设置 1.常用的文件文件夹操作 mkdir  创建文件夹 -p 如果指定 a/b/c 时 a .b 不存在,一起创建出来 cp       复制文件或文件夹 -r 复制文件夹 rmdir   删除空的文件夹 -p 类似于mkdir 沿途为空则一起删除 rm       删除文件或文件夹 -rf 递归静默删除 mv      移动文件(重命名)       如果目标和源 目录未改变,则移动的效果为重命名 2.文件属性的设置 chmod  改变文件的mo

Java学习笔记——File类之文件管理和读写操作、下载图片

Java学习笔记——File类之文件管理和读写操作.下载图片 File类的总结: 1.文件和文件夹的创建 2.文件的读取 3.文件的写入 4.文件的复制(字符流.字节流.处理流) 5.以图片地址下载图片 文件和文件夹 相关函数 (boolean) mkdir() 创建此抽象路径名指定的目录  (boolean) mkdirs() 创建此抽象路径名指定的目录,包括所有必需但不存在的父目录. (boolean) delete() 删除此抽象路径名表示的文件或目录 (boolean) createNe