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. jsp+mysql的字符过滤器

    jsp+mysql项目里面,在和数据库交互的时候,总是出现乱码.这都是老生常谈的事情了. 之前在那里放了一放,今天觉得还是尽早解决.用了一个过滤器. 代码: package wang.util; im ...

  2. VUE 学习笔记 一 指令

    1.声明式渲染 v-bind 特性被称为指令.指令带有前缀 v-,以表示它们是 Vue 提供的特殊特性 <div id='app'> <span v-bind:title=" ...

  3. angular 响应式表单指令

    响应式表单都是以 form开头的指令 第一列指令(不以name结尾)在html模版中,用 [ ] 第二列指令(以name结尾)在html模版中,不用 [ ]

  4. 在一般处理程序里面读写session

    1.引用命名空间 using System.Web.SessionState; 2.继承IRequiresSessionState接口 3.利用httpcontext类读写即可 context.ses ...

  5. Devexpress WPF教程

    [视频专辑]酷炫界面开发神器DevExpress WPF视频教程(36集全) http://www.devexpresscn.com/post/620.html

  6. WCF快速上手(二)

    服务端是CS程序,客户端(调用者)是BS程序 一.代码结构: 二.服务接口Contract和实体类Domain INoticeService: using Domain; using System; ...

  7. Lock 与Monitor 的用法与区别

    1.lock的底层本身是Monitor来实现的,所以Monitor可以实现lock的所有功能 2.Monitor有TryEnter的功能,可以防止出现死锁的问题,lock没有. 3.Monitor.E ...

  8. jquery分页插件pagination

    参考1:https://www.cnblogs.com/jingping/p/3925976.html 参考2:https://segmentfault.com/a/1190000014487357 ...

  9. js判断手机端操作系统的两种方法

    //判断手机端操作系统(Andorid/IOS),并自动跳转相应下载界面 androidURL ="http://xxx/xxx.apk"; var browser = { ver ...

  10. 【UI组件】——用jQuery做一个上拉刷新

    技术要点: 1.jQuery的插件写法 2.上拉刷新步骤分解 3.css样式 jQuery的插件写法: $.fn.pluginName = function() { return this.each( ...