java.io.File类,是java获取文件/文件夹的所有属性,和完成所有相关操作的类

例子:

 package test.file.IO;

 import java.io.*;
public class TestFile{
public static void main(String[] args){
//1.File类是java用来处理文件的类,它可以获取文件的所有属性 和 完成文件所需要的所有操作
// 所以使用的第一步就是new一个File对象
// File f = new File("test.txt");//构造方法也有多次重载
//2.判断文件是否存在,exists()方法,这是针对单个文件的,所以要用第三人称单数
//3.如果不存在那么就新建这个文件,createNewFile()
// 如果是要创建文件夹,则使用 mkdir();只能创建一层的文件夹和
// mkdirs()无论多少层都能够创建,所以推荐使用这个方法;
//4.判断文件是文件还是文件夹,isFile();isDirectory()
//5.如果是文件,获取文件的基本属性,getName()获取文件名;
// getPath()获取路径;
// getAbsolutePath()获取绝对路径;
// length()获取文件大小等等
//6.获取文件的父目录 getParent()
// getParentFile()可以获取父路径
//7.如果是文件夹,主要就是获取目录下的文件了
// list()返回所有子目录的文件名,返回值是String类型(隐藏文件也会返回)
// listFile()很明显,返回所有子目录下的所有文件,类型是File类型
// File f = new File("D:\\123\\789\\abc.txt");
if(f.exists()){//先判断文件是否存在
System.out.println("已存在");
}else{
if(f.isDirectory()){//判断要生成的是文件还是文件夹
f.mkdirs();//循环生成文件夹及其子文件夹
} else {
try {
if (!f.getParentFile().exists()) {//如果是创建包含文件夹的文件,必须先手动创建文件夹
f.getParentFile().mkdirs();
}
f.createNewFile();
} catch (Exception e) {
e.printStackTrace();
}
}
} //当为文件夹时,可以显示其子目录和文件
File f2 = new File("E:\\tommy_130923");
String[] fileNames = f2.list();//list会把文件和子目录都罗列出来
for(int i=0;i<fileNames.length;i++)
System.out.println(i+" "+fileNames[i]); System.out.println("***********************************");
File[] files = f2.listFiles();//以文件的格式返回所有的文件和子目录
for(int j=0;j<files.length;j++)
System.out.println(j+" "+files[j].getName()); //循环遍历文件
System.out.println("**************循环遍历文件*********************");
showFiles(f2);
} public static void showFiles(File f){
if(f.exists()&&f.isDirectory()){
File[] files = f.listFiles();
for(File file:files){
if(file.isDirectory())
showFiles(file);
else
System.out.println(file.getAbsolutePath());
} }else if(f.exists()&&f.isFile())
System.out.println(f.getAbsolutePath());
}
}

java的文件操作类File的更多相关文章

  1. java csv 文件 操作类

    一个CSV文件操作类,功能比较齐全: package tool; import java.io.BufferedReader; import java.io.BufferedWriter; impor ...

  2. java FileUtil(文件操作类)

    package tools; import java.io.BufferedReader; import java.io.File; import java.io.FileInputStream; i ...

  3. 文件操作类File

    File类:提供用于创建.复制.删除.移动和打开文件的静态方法.File类 FileInfo类:提供创建.复制.删除.移动和打开文件的属性和实例方法.FileInfo类 Directory类:公开用于 ...

  4. java 基础 —— 文件操作(File)

    1. 基本成员: File.separator public class File implements Serializable, Comparable<File> { private ...

  5. Java文件操作类效率对比

    前言 众所周知,Java中有多种针对文件的操作类,以面向字节流和字符流可分为两大类,这里以写入为例: 面向字节流的:FileOutputStream 和 BufferedOutputStream 面向 ...

  6. JAVA文件操作类和文件夹的操作代码示例

    JAVA文件操作类和文件夹的操作代码实例,包括读取文本文件内容, 新建目录,多级目录创建,新建文件,有编码方式的文件创建, 删除文件,删除文件夹,删除指定文件夹下所有文件, 复制单个文件,复制整个文件 ...

  7. File 文件操作类 大全

    File  文件操作类  大全 许多人都会对文件操作感到很难  我也是  但是一个好的项目中必定会涉及到文件操作的 文件的复制 粘贴  等等等 公司大佬写了 一个文件操作的工具类 感觉还是棒棒的啦   ...

  8. android 文件操作类简易总结

    android 文件操作类(参考链接) http://www.cnblogs.com/menlsh/archive/2013/04/02/2997084.html package com.androi ...

  9. java中文件操作《一》

    在日常的开发中我们经常会碰到对文件的操作,在java中对文件的操作都在java.io包下,这个包下的类有File.inputStream.outputStream.FileInputStream.Fi ...

随机推荐

  1. Hadoop 集群配置记录小结

    Hadoop集群配置往往按照网上教程就可以"配置成功",但是你自己在操作的时候会有很多奇奇怪怪的问题出现, 我在这里整理了一下常见的问题与处理方法: 1.配置/etc/hosts ...

  2. SQL 从数据库中随机取n条数据

    用NEWID()方法. * ,NEWID() AS random from [toblename] order by random 其中的1可以换成其他任意整数,表示取的数据条数

  3. windows 10 RelativePanel

    The new RelativePanel implements a style of layout that is defined by the relationships between its ...

  4. sgi stl内存池实现------源码加翻译

    class __default_alloc_template { enum { unit = 8 };//分配单位 后面直接用8代替 enum { max_bytes = 128 };//最大分配字节 ...

  5. 在Ubuntu16.04里面安装Gogland!

    一,安装 把linux版本的Gogland拷贝到Ubuntu16.04里面,随后在想要存放它的地方解压缩,这样就完成了安装! 二,让Gogland可以快速启动 linux版本的Gogland的启动是用 ...

  6. FusionCharts的使用方法 - 公司所用的flash式的图像统计工具

    我们公司一直用这个图表统计, 最近整理了一下相关文档,提供大家学习. 首先可以看看 http://www.cnblogs.com/xuhongfei/archive/2013/04/12/301688 ...

  7. pkuwc 前的任务计划

    菜鸡 wxw 的计划(肯定会咕咕咕 12.27 luogu P4244 [SHOI2008]仙人掌图 II(咕咕咕 luogu P4246 [SHOI2008]堵塞的交通 (没有咕! luogu P1 ...

  8. BZOJ 3110 [Zjoi2013]K大数查询 (CDQ分治+树状数组)

    题目描述 有N个位置,M个操作.操作有两种,每次操作如果是1 a b c的形式表示在第a个位置到第b个位置,每个位置加入一个数c如果是2 a b c形式,表示询问从第a个位置到第b个位置,第C大的数是 ...

  9. 10分钟教你用Python打造微信天气预报机器人

    01 前言 最近武汉的天气越来越恶劣了.动不动就下雨,所以,拥有一款好的天气预报工具,对于我们大学生来说,还真是挺重要的了.好了,自己动手,丰衣足食,我们来用Python打造一个天气预报的微信机器人吧 ...

  10. 钉钉机器人集成Jenkins推送消息模板自定义发送报告

    一.由于公司同样也使用了钉钉.那么在做Jenkins集成自动化部署的时候,也是可以集成钉钉的. 那种Jenkins下载钉钉插件集成,简单设置就可以完成了.我们今天要做的是,定制化的发送消息. 钉钉推送 ...