File构造方法:

public File(String pathname){}	//将字符串路径变成File对象
public File(String parent , String chlid){}//将父级路径和子级路径进行拼接
public File(File parent , String child){}

File的路径可以是不存在的

成员方法:

直接说注意点:

  1. length()只能用于判断文件大小,不能判断文件夹大小
  2. getAbsoluate()会返回文件的绝对地址,而getPath()则会返回当时定义文件的路径,不管是用的相对路径,或者是:项目名/文件名
  3. creatNewFile()只能用于创建文件,不能用于创建文件夹,如果不写后缀名会创建无后缀的文件,如果存在这个文件,返回false创建失败,但是如果没有找到对应的父路径,会报错(这个方法需要处理异常)
  4. Windows操作系统下,文件和文件夹的名称不能重复(包括后缀名)

  1. delete()方法会直接删除(不会经过回收站)

获取并遍历

listFiles获取该路径下的所有内容,并返回一个File数组

File f[]=v.listFiles();

注意点:

  1. 调用者File表示的路径不存在时,返回null
  2. 调用者File表示的是文件时,返回null
  3. 调用者File表示空文件夹,返回长度为0的数组
  4. 调用者File内的隐藏文件夹依然会被获取到

其他:

  1. public static File[] listRoots()列出可用的系统根,其实也就是CD盘。需要注意的是它返回的是File类型的数组,不能直接输出打印,需要用for循环进行循环输出

  1. public String[] list()类似于listFile()但是由于返回值是String类型,只获取名字
  2. FilenameFilter filter是个文件名过滤器,在定义中是一个函数式接口,也就是说,可以写成内部类
import java.io.*;
public class Test {

public static void main(String[] args) {

File file = new File("C:\Users\Lenovo\Desktop\WP");

String[] a = file.list(new FilenameFilter() {

@Override

public boolean accept(File dir, String name) {

return name.endsWith(".txt");

}

});

for (int i = 0; i < a.length; i++) {

System.out.println(a[i]);

}

}

}
  1. FileFilter的使用和上面基本一致,只是重写方法的参数不同
package Java_test;

import java.io.*;



public class Test {

public static void main(String[] args) {

File file = new File("C:\Users\Lenovo\Desktop\WP");

File[] a = file.listFiles(new FileFilter() {

@Override

public boolean accept(File pathname) {

return pathname.isDirectory();

}

});

for (int i = 0; i < a.length; i++) {

System.out.println(a[i]);

}

}

}

File与IO流之File基础的更多相关文章

  1. IO流,File类的测试........课堂加总结

    package liu0926; import java.io.File; import java.io.IOException; public class Text01 { public stati ...

  2. 12.19 file 与io流

    12.19 file与io流 File 1. 新建文件或者文件夹 新建文件 File F = new File(pathname:"路径+文件名");Boolean flag = ...

  3. Java:IO流与文件基础

    Java:IO流与文件基础 说明: 本章内容将会持续更新,大家可以关注一下并给我提供建议,谢谢啦. 走进流 什么是流 流:从源到目的地的字节的有序序列. 在Java中,可以从其中读取一个字节序列的对象 ...

  4. Java基础教程:IO流与文件基础

    Java:IO流与文件基础 说明: 本章内容将会持续更新,大家可以关注一下并给我提供建议,谢谢啦. 走进流 什么是流 流:从源到目的地的字节的有序序列. 在Java中,可以从其中读取一个字节序列的对象 ...

  5. 乐字节Java之file、IO流基础知识和操作步骤

    嗨喽,小乐又来了,今天要给大家送上的技术文章是Java重点知识-IO流. 先来看看IO流的思维导图吧. 一. File 在Java中,Everything is Object!所以在文件中,也不例外! ...

  6. java基础——IO流之File类

    1.File类的构造方法: File(String  pathName):通过一个指定的字符串类型路径来创建一个文件对象 File  (String parent,String child):通过指定 ...

  7. java基础9(IO流)-File类

    File类 File:文件和目录路径名的抽象表示形式.即java中把文件或者目录都封装成File对象 代码练习1 import java.io.File; public class FileDemo1 ...

  8. java IO流 之 FIle类基础

    package IO; import java.io.File;import java.io.IOException; public class FileIO { /** * 构建及获取文件名信息 * ...

  9. javaEE(Stream流、日志、IO流、File)

    Stream流 简化集合和数组操作的API List<String> list =new ArrayList<>(); Collection.addAll(list," ...

  10. IO流(File类,IO流的分类,字节流和字符流,转换流,缓冲流,对象序列化)

    1.File类 File类可以在程序中 操作文件和目录.File类是通过建立File类对象,在调用File类的对象来进行相关操作的. 示例: public class Demo01 { public  ...

随机推荐

  1. 如何用Forest方便快捷地在SpringBoot项目中对接DeepSeek

    ​ 一. 环境要求 JDK 8 / 17 SpringBoot 2.x / 3.x Forest 1.6.4+ Fastjson2 依赖配置 除了 SpringBoot 和 Lombok 等基础框架之 ...

  2. win32绘图:绘制直线 矩形 圆形 曲线等

    查看代码 #include <Windows.h> //画点 void PaintSetPixel(HDC hdc) { for (short i = 0; i < 20; i++) ...

  3. [Software Note ] Fibersim-export-OffsetedMesh

    输出Offseted 的Drape data 只在fibersim 导出界面打开Allow offset simulation 选项,输出的网格还是在layup surface 上: 输出的数据并未偏 ...

  4. ORACLE SQL中执行先后次序的问题

    分享一个经验 需求:Oracle中,根据COST优先级取最优先的一条记录脚本: select ... from ... where ... and rownum=1 order by cost 实际不 ...

  5. Win32控制台获取可执行程序的快捷方式的目标位置、起始位置、快捷键、备注等

    Win32控制台获取可执行程序的快捷方式的目标位置.起始位置.快捷键.备注等,示例如下图: #include <iostream> #include <atlstr.h> #i ...

  6. .NET Cas 认证(基于Cookie)

    项目需求:开发系统A 对接客户公司的cas 认证系统 B,实现单点登录 业务场景描述:打开A 系统地址,判断Cookie 是否登录状态,如果未登录,跳转B登录界面:如果已登录,直接获取到cookie ...

  7. 设置git忽略文件

    要设置Git忽略文件,你可以使用一个名为.gitignore的特殊文件.在这个文件中,你可以列出需要Git忽略的文件.文件夹.或者匹配模式.当Git执行操作时,它会自动忽略这些被列出的文件. 1. 在 ...

  8. 多态的转型和案例--java进阶day02

    1.多态的转型 1.向上转型 我们之前学的多态创建对象,使用的都是向上转型,父类引用指向子类(赋值方式则是从子到父),f拿到子类的地址,就能访问子类的堆内存 2.向下转型 和向上转型相反,子类引用指向 ...

  9. 【网络】Windows在局域网配置DNS服务器

    [网络]Windows在局域网配置DNS服务器 零.需求 最近因为要搭建一个局域网视频聊天系统,需要用到HTTPS协议,HTTPS协议需要证书,证书需要用到域名,而且IP地址不太好记,就想着直接在聊天 ...

  10. Quartz.NET - 教程 12: Quartz 的其他特性

    译者注: 目录在这 Quartz.NET 3.x 教程 原文在这 Lesson 12: Miscellaneous Features of Quartz 插件 Quartz 提供了一个用于插入附加功能 ...