File类:

  定义:文件和目录径的抽象表示形式, Java中将路径或者文件封装成File对象

  1.File类的静态成员变量

package com.zs.Demo2;

import java.io.File;

public class FileDemo {
public static void main(String[] args) {
fun();
} private static void fun() {
String s = File.pathSeparator;//目录分隔符 ; 在linux中是:
System.out.println(s); //结果 ;
String s1 = File.separator;// 目录的名称分隔符 \ 在linux中是:/
System.out.println(s1); //结果 \
}
}

  2.File类的构造方法:

import com.sun.org.apache.bcel.internal.generic.NEW;

import java.io.File;

public class FileDemo1 {
public static void main(String[] args) {
fun1();
fun2();
fun3();
} private static void fun3() {
File parent = new File("d:");
File f=new File(parent,"IntelliJ IDEA 2018.3.4");
System.out.println(f);//d:\IntelliJ IDEA 2018.3.4
} private static void fun2() {
//传递父路径,子路径
File f=new File("d:","IntelliJ IDEA 2018.3.4");
System.out.println(f);//d:\IntelliJ IDEA 2018.3.4
} private static void fun1() {
//传递路径名
File f=new File("D:\\IntelliJ IDEA 2018.3.4");
System.out.println(f);//D:\IntelliJ IDEA 2018.3.4
}
}

  3.File类的功能

    创建和删除:

package com.zs.Demo2;

import com.sun.org.apache.bcel.internal.generic.NEW;

import java.io.File;
import java.io.IOException; /*创建和删除文件夹功能*/
public class FileDemo2 {
public static void main(String[] args) {
try {
fun();
fun1();
fun2();
} catch (IOException e) {
e.printStackTrace();
}
} private static void fun2() {
//删除,不经过回收站,直接从硬盘中删除
File f= new File("d:\\Filelx.txt");
boolean b = f.delete();
System.out.println(b);//true
} private static void fun1() {
//创建单级文件夹
File f=new File("d:\\lx");
boolean b = f.mkdir();
System.out.println(b);
//创建多级文件夹
File f1=new File("d:\\Filelx\\lx\\javalx.txt");
boolean b1 = f1.mkdirs();
System.out.println(b1);
} private static void fun() throws IOException {
File f=new File("d:\\FileLx.txt");
//createNewFile()创建文件,返回true,如果已经存在了,就不再创建,返回false;
boolean b = f.createNewFile();
System.out.println(b);//true
}
}

    获取功能:

package com.zs.Demo2;

import java.io.File;

public class FileDemo3 {
public static void main(String[] args) {
fun();
fun1();
fun2();
fun3();
} private static void fun3() {
File f=new File("D:\\IntelliJ IDEA 2018.3.4\\build.txt");
String parent = f.getParent();//获取父路径
System.out.println(parent);//D:\IntelliJ IDEA 2018.3.4
} private static void fun2() {
File f=new File("D:\\IntelliJ IDEA 2018.3.4\\build.txt");
String path = f.getPath();//获取文件的绝对路径
System.out.println(path);//D:\IntelliJ IDEA 2018.3.4\build.txt
} private static void fun1() {
File f=new File("D:\\IntelliJ IDEA 2018.3.4\\build.txt");
long length = f.length();//获取文件的字节数
System.out.println(length);//
} private static void fun() {
File f=new File("D:\\IntelliJ IDEA 2018.3.4\\build.txt");
String name = f.getName();//获取路径最后部分的名字
System.out.println(name);//build.txt
}
}

    判断功能:

package com.zs.Demo2;

import java.io.File;

public class FileDemo4 {
public static void main(String[] args) {
fun();
fun1();
} private static void fun1() {
File f=new File("D:\\IntelliJ IDEA 2018.3.4");
boolean b = f.isDirectory();//判断是否为文件夹(路径)
System.out.println(b);//true
} private static void fun() {
File f=new File("D:\\IntelliJ IDEA 2018.3.4\\build.txt");
boolean b = f.exists();//判断文件(夹)是否存在
System.out.println(b);//true
}
}

    遍历目录获取(list获取):

package com.zs.Demo2;

import java.io.File;

public class FileDemo5 {
public static void main(String[] args) {
// fun();
fun2();
} private static void fun() {
File f=new File("D:\\IntelliJ IDEA 2018.3.4");
String[] list = f.list();//获取 目录下的文件以及文件夹
for (String s : list) {
System.out.println(s);
}
/* bin
build.txt
help
Install-Windows-zip.txt
ipr.reg
jre64
lib
license
plugins
product-info.json
redist*/
} private static void fun2() {
//同样的功能,推荐使用这种,因为这种功能更强大,可以实现更多后续操作
File f=new File("D:\\IntelliJ IDEA 2018.3.4");
File[] files = f.listFiles();
for (File file : files) {
System.out.println(file);
}
/* D:\IntelliJ IDEA 2018.3.4\bin
D:\IntelliJ IDEA 2018.3.4\build.txt
D:\IntelliJ IDEA 2018.3.4\help
D:\IntelliJ IDEA 2018.3.4\Install-Windows-zip.txt
D:\IntelliJ IDEA 2018.3.4\ipr.reg
D:\IntelliJ IDEA 2018.3.4\jre64
D:\IntelliJ IDEA 2018.3.4\lib
D:\IntelliJ IDEA 2018.3.4\license
D:\IntelliJ IDEA 2018.3.4\plugins
D:\IntelliJ IDEA 2018.3.4\product-info.json
D:\IntelliJ IDEA 2018.3.4\redist*/
}
}

   文件过滤器:

package com.zs.Demo2;

import com.sun.org.apache.bcel.internal.generic.NEW;

import java.io.File;
import java.io.FileFilter; public class FileDemo6 {
static class MyFile implements FileFilter {
@Override
public boolean accept(File pathname) {
return pathname.getName().endsWith(".exe");
}
}
public static void main(String[] args) {
fun();
} private static void fun() {
File f= new File("D:\\IntelliJ IDEA 2018.3.4\\bin");
File[] files = f.listFiles(new MyFile());
for (File file : files) {
System.out.println(file);
} }
}

  递归遍历一个目录下的所有文件:

package com.zs.ZaoYe;

import java.io.File;

public class DiGui {
DiGui(){
File f=new File("D:\\IntelliJ IDEA 2018.3.4");
if (f.exists()){
binaryFile(f);
}else{
System.out.println("要遍历的目录不存在!!!");
}
} private void binaryFile(File f){
File[] files = f.listFiles();
for (File file : files) {
if (file.isDirectory()) {
binaryFile(file);
} else {
System.out.println(file);
}
}
} public static void main(String[] args) {
new DiGui();
}
}

java学习笔记27(File类)的更多相关文章

  1. 6.1(java学习笔记)File类

    1.路径分隔符,文件分隔符. 路径分隔符(“:”) 文件名称分隔符(“\”windows,“/”Linux等). 不同平台使用的文件分隔符是不一样的,所以File类中提供了分隔符常量,它会根据平台的不 ...

  2. java学习笔记7--抽象类与抽象方法

    接着前面的学习: java学习笔记6--类的继承.Object类 java学习笔记5--类的方法 java学习笔记4--类与对象的基本概念(2) java学习笔记3--类与对象的基本概念(1) jav ...

  3. Java分享笔记:File类中常用方法的介绍

    java.io包下的File类用于描述和创建一个文件或文件夹对象,只能对文件或文件夹做一些简单操作,不能修改文件的内容,功能比较有限.下面是对于File类中常用方法的程序演示. [1] 演示程序一 p ...

  4. Java学习笔记16---抽象类与接口的浅显理解

    抽象类是由abstract修饰的类,定义方式如public abstract class A{...}. 接口由interface修饰,定义方式如public interface B{...}. 抽象 ...

  5. 1.9(java学习笔记)object类及toString()与equals()方法

    object类 java中objec是所有类公共的父类,一个类只要没有明显的继承某一类,那么它就是继承object类. 例如 class Person {......};和class Person e ...

  6. 吴裕雄--天生自然JAVAIO操作学习笔记:File类

    import java.io.File ; import java.io.IOException ; public class FileDemo01{ public static void main( ...

  7. java新手笔记27 监听器类

    1.外部类监听 package com.yfs.javase; import java.awt.Button; import java.awt.FlowLayout; import java.awt. ...

  8. 【原】Java学习笔记031 - 常用类

    package cn.temptation; public class Sample01 { public static void main(String[] args) { /* * 类 Math: ...

  9. Java学习笔记day06_自定义类_ArrayList

    1.自定义类class 使用类的形式, 对现实中的事物进行描述. 类是引用数据类型. 事物: 方法,变量. 方法:事物具备的功能. 变量:事物的属性. 格式: public class 类名{ //属 ...

随机推荐

  1. 媒体查询漫谈——@media Queries

    通过不同的媒体类型和条件定义样式表规则.媒体查询让CSS可以更精确作用于不同的媒体类型和同一媒体的不同条件.媒体查询的大部分媒体特性都接受min和max用于表达”大于或等于”和”小与或等于”.如:wi ...

  2. Oracle PL/SQL游标

    游标的提出: SQL是面向集合的,其结果一般是集合量(多条记录),而PL/SQL的变量一本是标量,其一组变量异常一直只能存放一条记录.所以仅仅使用变量并不能完全满足SQL语句向应用程序输出数据的要求. ...

  3. Redis(window版本)安装及使用

    1.打开redis官网http://redis.io/点击Download 2.往下拉,找到Windows,由图片中的文字可以看出Redis项目不正式支持Windows. 但是,Microsoft开放 ...

  4. python爬虫---urllib库的基本用法

    urllib是python自带的请求库,各种功能相比较之下也是比较完备的,urllib库包含了一下四个模块: urllib.request   请求模块 urllib.error   异常处理模块 u ...

  5. noip2014无线网络发射器选址

    题目描述 随着智能手机的日益普及,人们对无线网的需求日益增大.某城市决定对城市内的公共场所覆盖无线网. 假设该城市的布局为由严格平行的 129 条东西向街道和 129 条南北向街道所形成的网格状,并且 ...

  6. Windows下定时任务

    windows计划任务 1.写一个PHP程序,命名为test.php,内容如下所示: <? $fp = fopen("test.txt", "a+"); ...

  7. pip安装报错处理+PyPi源切换教程

    一.pip安装出错类型 1.1 pip版本过旧导致不能安装 报错提示: You are using pip version 9.0.3, however version 10.0.1 is avail ...

  8. ftp/sftp定时自动上传文件脚本(CentOS)

    1.ftp自动上传文件脚本 #!/bin/bash ftp -n<<! open 192.168.220.129 user ls toor binary hash cd /path/to/ ...

  9. MFC消息-自定义消息

    转:http://blog.csdn.net/penpenandtongtong/article/details/18598907 像MFC的窗口发送消息,可以进行自定义的动作行为,因此很多时候非常有 ...

  10. 常用的flex知识 ,比起float position 好用不少

      flex布局具有便捷.灵活的特点,熟练的运用flex布局能解决大部分布局问题,这里对一些常用布局场景做一些总结. web页面布局(topbar + main + footbar) 示例代码   要 ...