File类是我们接触的比较多的类,当初学习是真是傻傻分不清啊.今天就总结一下file的一些比较不好区分的地方.

首先:当然就是构造方法

File f = new File("文件路径")
File f = new File("parent","child")

1,创建一个文件

 //在工作空间目录下创建a.txt的文件
File f = new File("a.txt");
f.createNewFile(); 在G:\路径下创建一个a.txt的文件.如果已经有的话这不会重新创建
File f = new File("G:\\a.txt");
f.createNewFile(); 如果路径写成\\a.txt,会在盘符下创建新的文件
File f = new File("\\a.txt");
f.createNewFile();

2,创建一个文件夹

 //在工作空间目录下创建a.txt的文件夹
File f = new File("a");
f.mkdir(); 在G:\路径下创建一个a.txt的文件夹.如果已经有的话这不会重新创建
File f = new File("G:\\a");
f.mkdir(); 如果路径写成\\a.txt,会在盘符下创建新的文件夹
File f = new File("\\a");
f.mkdir(); 在g盘下创建文件夹a,a 下创建一个b文件夹
File f = new File("G:\\a\\b");
f.mkdirs(); //注意mkdirs(),创建多个文件夹

3,new File 的区别:

 File f = new File("a");//此时f是文件夹

    File f = new File("parent","child"); //此时f是文件,parent文件夹下的文件

    注意:此时会在盘符根目录下创建文件夹 或文件 d
File f = new File("", "d");
f.createNewFile(); // f.mkdir()

4,list()方法与listFiles()方法区别:

f.list();
返回String[]数组.里面包含了f一级目录下的文件和文件夹名.
注意: 如果f:\\a\\b.那么b不会包含在数组中 f.listFiles()
返回File[]数组.里面包含了f一级目录下的文件和文件夹.
注意: 如果f:\\a\\b.那么b不会包含在数组中

5,文件名过滤器 FilenameFilter

在f1的文件夹中过滤出后缀名为 "txt"的文件
String[] s = f1.list(new FilenameFilter() {
/**
* dir 需要被过滤的文件夹 name 需要别被过滤的文 件名 .此名是相对路径
* 如果返回true 则证明是符合条件的文件.会将改文件返回到数组中
*/
@Override
public boolean accept(File dir, String name) {
File f = new File(dir, name);
if (f.isDirectory()) {
return false;
} if (f.getName().endsWith("txt")) {
return true;
} return false;
}
});

6,文件过滤器 FileFilter FilenameFilter

  在f1文件夹中过滤出文件长度大于20M的文件.
  File[] fs = f1.listFiles(new FileFilter() {
/**
* pathname 表示要被过滤的文件,注意:不是文件名
* 返ture 证明是符合条件的文件
*/
@Override
public boolean accept(File pathname) { if (pathname.length() > 1024 * 1024 * 20) {
return true;
} return false;
}
});

文件一些常用方法:

        f.delete();  //删除file
f.exists(); //file是否存在
f.getName(); //得到file名字
f.isDirectory(); //file是否是文件夹
f.isFile(); //file是否是文件
f.length(); //file的长度

文件路径分为两种:

1,绝对路径  G:\\a.txt
2,相对路径 a.txt. //相对于工作空间的路径( G:\andirodWorkspace\a.txt)

好了,文件的基本创建就是这些了.接下来整理I/O流.

java中关于File类的细说的更多相关文章

  1. java中的File类

    File类 java中的File类其实和文件并没有多大关系,它更像一个对文件路径描述的类.它即可以代表某个路径下的特定文件,也可以用来表示该路径的下的所有文件,所以我们不要被它的表象所迷惑.对文件的真 ...

  2. 详谈JAVA中的file类与IO流

    File类 位置于java.io包构造方法:File(String parent, String child)new file("d:\\","a.txt") ...

  3. [原创]Java中使用File类的list方法获取一定数量的文件:FilenameFilter接口的特殊用法

    前言:有时候我们可能会遇到这样一个问题:需要遍历一个包含极多文件的文件夹,首先想到的肯定是使用File.list()方法,该方法返回一个String[],但是如果文件达到几亿呢?这个时候我们就需要分批 ...

  4. Java中的File类,递归是什么?

    一.IO概述 当需要把内存中的数据存储到持久化设备上这个动作称为输出(写)Output操作. 当把持久设备上的数据读取到内存中的这个动作称为输入(读)Input操作. 因此我们把这种输入和输出动作称为 ...

  5. 用Java中的File类模拟实现对系统文件的增删改查效果

    码字不易,三连支持一波吧 IO操作向来是各大语言的热区,而对文件的操作也是重中之重. 那么在Java中也给我们提供了很多关于文件操作的类.今天我就用一个比较基本的File类来模拟实现对文件的增删改查效 ...

  6. java中关于File类的mkdirs()和FIle()构造方法在windows环境内网测试总结

    环境:环境是内网windows,传入路径的时候不带盘符,并且服务器的win10也不是超级管理员账户 关于File类的mkdirs()远程访问创建不了文件和路径的问题. 如果浏览器操作者是windows ...

  7. Java中使用File类删除文件夹和文件

    删除工具类: import java.io.File; public class DeleteAll{ public static void deleteAll(File file){ if(file ...

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

    Java学习笔记——File类之文件管理和读写操作.下载图片 File类的总结: 1.文件和文件夹的创建 2.文件的读取 3.文件的写入 4.文件的复制(字符流.字节流.处理流) 5.以图片地址下载图 ...

  9. JAVA中的File.separate(跨平台路径)

    转: JAVA中的File.separate(跨平台路径) 2016年03月27日 23:33:50 才不是本人 阅读数:1952   在Windows下的路径分隔符和Linux下的路径分隔符是不一样 ...

随机推荐

  1. gl_PointSize偶数像素表现精准,基数会模糊化。

  2. Redis整理

    1. Redis采用的是单进程多线程的模式.当redis.conf中选项daemonize设置成yes时,代表开启守护进程模式.在该模式下,redis会在后台运行,并将进程pid号写入至redis.c ...

  3. [LeetCode&Python] Problem 107. Binary Tree Level Order Traversal II

    Given a binary tree, return the bottom-up level order traversal of its nodes' values. (ie, from left ...

  4. 阿里云ECS服务器购买流程 (自定义配置购买、按月、按量购买)教程

    阿里ECS云服务器自定义购买流程 本文提供全图文流程,中文翻译. Chinar 坚持将简单的生活方式,带给世人!(拥有更好的阅读体验 -- 高分辨率用户请根据需求调整网页缩放比例) Chinar -- ...

  5. deque中的细节问题,以及reverse和max_element的使用

    deque中使用迭代器进行运算的函数都默认以.end()为结束,而实际上.end()所返回的是最后一个元素的下一个位置,所以进行数据比较时,应对其-1才是对应的最后一个数据,而函数中则是直接使用.en ...

  6. Linux中查看显卡硬件信息

    Linux中查看显卡硬件信息 https://ywnz.com/linuxjc/67.html lspci -vnn | grep VGA -A 12lshw -C display 查看当前使用的显卡 ...

  7. C++学习(二十)(C语言部分)之 函数1

    函数 printf 输出的函数 scanf 输入的函数函数是什么 怎么写 是一组一起执行一个任务的语句 一个程序的基本组成单位是函数 只需要知道函数名字和括号里面要填的内容 就可以调用函数 1.如果代 ...

  8. hdu4614 Vases and Flowers 线段树

    Alice is so popular that she can receive many flowers everyday. She has N vases numbered from 0 to N ...

  9. python.numpy.std()计算矩阵标准差

    >>> a = np.array([[1, 2], [3, 4]]) >>> np.std(a) # 计算全局标准差 1.1180339887498949 > ...

  10. Js判断字符的种类

    Js判断字符的种类:unicode范围: 48-57:0-9    数字字符 65-90:A-Z    大写字母 97-122: a-z  小写字母 19968-40869:汉字 其他字符 实例:输出 ...