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. 格式化json

    格式化输出JSON var obj = {"args0":{"asynTarget":false,"atomicList":[{" ...

  2. [LeetCode&Python] Problem 771: Jewels and Stones

    You're given strings J representing the types of stones that are jewels, and S representing the ston ...

  3. leetcode227. Basic CalculatorII

    这道题是只有四则运算但是没有括号的,因此可以利用stack来存储的,并且每次使得存储的值与符号有对应的关系,最后在栈中只剩下可以利用加法进行处理的数的,注意在i=n-1的时候到达最后的部分也是需要把数 ...

  4. 自定义bootbox:dialog方法

    <script src="static/ace/js/bootbox.js"></script>bootbox.dialog({ message: '< ...

  5. 识别假tf卡工具

    h2testwhttps://www.heise.de/download/product/h2testw-50539使用HaraldBögeholz的免费测试工具H2testw,可以检查存储介质(如硬 ...

  6. (0-1)CSS 标签语法的属性

    CSS text-decoration 属性 display display 属性规定元素应该生成的框的类型

  7. switch语句和switch-case与if-else之间的转换

    switch语句格式:switch(变量){case 常量1:语句1;break;case 常量2:语句2;break;......default:语句;break;}特点:1.根据变量的值,选择相应 ...

  8. hdu4300 Clairewd’s message 扩展KMP

    Clairewd is a member of FBI. After several years concealing in BUPT, she intercepted some important ...

  9. 每天进步一点点-实例为导学-一个java对象序列化的例子

    序列化和反序列化例子 如果我们想要序列化一个对象, (对象 转 序列)首先要创建某些OutputStream(如FileOutputStream.ByteArrayOutputStream等),然后将 ...

  10. golang fatal error: concurrent map read and map write

    调试程序的时候,为了打印map中的内容 ,直接 使用seelog 的方法打印 map中的内容到日志,结果出现 “concurrent map read and map write”的错误,导致程序异常 ...