一、File类;

File类时io包中唯一代表磁盘文件本身的对象。File类定义了一些与平台无关的方法来操作文件,可以通过调用File类中的方法,实现创建、删除、重命名文件等。

File类的对象主要用来获取文本的一些信息,如文件所在的目录、文件的长度、文件的读取权限等。

1.文件的创建;目录(文件夹)的创建

File(String pathname):在此File的构造方法中填入一个String类型的路径名;实例如下:

String s="d:\\aaa.txt";

File f=new File(s);  或者    File f=new File("d:\\aaa.txt");

(以上是创建文件(或者目录)对象,对象创建出来了,那么就要开始创建文件(或者目录)了)

f.createNewFile();(创建文件)f.mkdir(创建目录)

(这样文件就被创建出来了,)

2.文件和目录的删除;

同上一样,先创建文件对象,调用该对象的删除方法

f.delete();

package com.inba.maya.liu;

import java.io.File;

public class Text {

    public static void main(String[] args) throws Exception{
//1.创建文件
/*
String fileName="g:\\aaa.txt";
File f=new File(fileName);
f.createNewFile(); //此方法建文件
*/ //2.创建目录
/*
String dirName="g:\\bbb";
File f=new File(dirName);
f.mkdir(); //此方法建文件夹
*/ //3.删除--删文件或目录
String fileName="g:\\aaa";
File f=new File(fileName);
f.delete();
}
}

3.重命名和移动

package com.inba.maya.liu;
import java.io.File;
public class Text {
public static void main(String[] args) throws Exception{ //三、重命名或移动
String n1="f:\\bbb.txt";
String n2="g:\\bbb.txt";
File f1=new File(n1);
File f2=new File(n2);
f1.renameTo(f2);
//实际上是先移动,后改名
} }

4.列表--把该文件夹下的文件或者子文件找出来:

package com.inba.maya.liu;

import java.io.File;

public class Text {

    public static void main(String[] args) throws Exception{

        /*//第一种方式遍历.list

        String dirName="f:\\复刻";
File f=new File(dirName);
String[] names=f.list();//出来的是文件对象的数组
for(int i=0;i<names.length;i++){
System.out.println(names[i]);//获取文件名,不带路径
}
*/ //第二种方式遍历File[]
String dirName="F:\\复刻\\新建文件夹\\";
File f=new File(dirName);
File[] files=f.listFiles();
for(int i=0;i<files.length;i++){
//String s=files[i].getName();//获取文件名
//String s=files[i].getPath();//获取文件路径,不写get,默认是getpath
//System.out.println(s); File dest=new File(dirName+i+"HHH.txt");
files[i].renameTo(dest);
} } }
第二种遍历方式中,没有注释的部分是利用了renameTo方法来批量修改文件名称;
1.首先定义源目录:String dirName="F:\\复刻\\新建文件夹\\"
2.f.listFiles(),取出的是数组,付给File[]
3.遍历,没循环一次造一个目标文件:File dest=new File(dirName+i+"HHH.txt");
4.files[i].renameTo(dest);把当前文件移动并重命名到目标文件。

5.判断是否是文件或目录或隐藏文件等等(具体查看jdk文档File类)

package com.inba.maya.liu;
import java.io.*;
public class Text1 {
public static void main(String[] args) throws Exception {
String s="c:";
File f=new File(s);
File[] files=f.listFiles();
for(int i=0;i<files.length;i++){
if(files[i].isDirectory()){
System.out.print("【目录】");
}else if(files[i].isHidden()){
System.out.print("【隐藏文件】");
}else if(files[i].isFile()){
System.out.print("【文件】");
}
System.out.println(files[i]);
}
}
}

File类详解的更多相关文章

  1. JavaIO(01)File类详解

    File类 file类中的主要方法和变量   常量: 表示路径的分割符:(windows) 作用:根据java可移植性的特点,编写路径一定要符合本地操作系统要求的分割符: public static ...

  2. File类 详解!

    package cn.zhoucufeng; import java.io.File; import java.io.IOException; import java.util.Arrays; imp ...

  3. 【56】java本地文件File类详解

    1.java类的介绍 public class File extends Object implements Serializable, Comparable<File> 文件和目录路径名 ...

  4. java中File类详解

    构造函数 代码如下: public class FileDemo {     public static void main(String[] args){         //构造函数File(St ...

  5. Java之File类详解

    常用操作: File f = new File("C:\\testdata\\filedir\\a\\b\\c"); f.mkdir(); //建立单级目录 f.mkdirs(); ...

  6. QAction类详解:

    先贴一段描述:Qt文档原文: Detailed Description The QAction class provides an abstract user interface action tha ...

  7. JAVAEE学习——struts2_01:简介、搭建、架构、配置、action类详解和练习:客户列表

    一.struts2是什么 1.概念 2.struts2使用优势以及历史 二.搭建struts2框架 1.导包 (解压缩)struts2-blank.war就会看到 2.书写Action类 public ...

  8. URLConnection类详解-转

    转-http://www.cnblogs.com/shijiaqi1066/p/3753224.html 1. URLConnection概述 URLConnection是一个抽象类,表示指向URL指 ...

  9. JDK中Unsafe类详解

    Java中Unsafe类详解 在openjdk8下看Unsafe源码 浅析Java中的原子操作 Java并发编程之LockSupport http://hg.openjdk.java.net/jdk7 ...

随机推荐

  1. swift字典集合-备

    Swift字典表示一种非常复杂的集合,允许按照某个键来访问元素.字典是由两部分集合构成的,一个是键(key)集合,一个是值(value)集合.键集合是不能有重复元素的,而值集合是可以重复的,键和值是成 ...

  2. [POJ] 1274 The Perfect Stall(二分图最大匹配)

    题目地址:http://poj.org/problem?id=1274 把每个奶牛ci向它喜欢的畜栏vi连边建图.那么求最大安排数就变成求二分图最大匹配数. #include<cstdio> ...

  3. 在C语言控制台程序中播放MP3音乐

    游戏没有声音多单调. 这里做一个简单的范例,用 mciSendString 函数播放 MP3 格式的音乐,先看看代码吧: // 编译该范例前,请把 background.mp3 放在项目文件夹中 // ...

  4. 桌面上嵌入窗口(桌面日历)原理探索(将该窗口的Owner设置成桌面的Shell 窗口,可使用SetWindowLong更改窗口的GWL_HWNDPARENT,还要使用SetWindowPos设置Z-Order)

    今天在QQ群里有人问怎样实现将自己的窗口嵌入桌面,让它和桌面融为一体,就像很多桌面日历软件那样. 我当时想到的就是建立一个Child  Window,将他的父窗口设置成桌面Shell窗口就可以了.但是 ...

  5. 通过代理访问nginx和直接访问nginx区别

    80.82.78.38 [23/Sep/2016:05:36:18 +0800] "GET http://www.baidu.com/cache/global/img/gs.gif HTTP ...

  6. 【转】Service Intent must be explicit的解决方法

    原文网址:http://blog.csdn.net/shenzhonglaoxu/article/details/42675287 今天在学习android的Service组件的时候,在Android ...

  7. bzoj4003

    http://www.lydsy.com/JudgeOnline/problem.php?id=4003 可合并堆. 每个点都有一个小根堆,记住可以到这个点的骑士有哪些,以战斗力为关键字. 从底层到顶 ...

  8. CSDN第四届在线编程大赛2014初赛:带通配符的数

    题目要求: 输入参数:参数A,含有任意个数的?的数值字符串,如:12?4,?代表一位任意数             参数B,不含?的数值字符串,长度与参数A一致输出结果:参数A比参数B大的可能数值个数 ...

  9. 【开源】Hawk-数据抓取工具:简明教程

    1.软件介绍 HAWK是一种数据采集和清洗工具,依据GPL协议开源,能够灵活,有效地采集来自网页,数据库,文件, 并通过可视化地拖拽, 快速地进行生成,过滤,转换等操作.其功能最适合的领域,是爬虫和数 ...

  10. J2EE学习路线

    第一部分:  JAVA语言基础知识.包括异常.IO流.多线程.集合类.数据库.(切记基础知识一定要时时刻刻巩固,注意,如果你是想以最快速度学习J2EE,关于Java中的Swing知识点,就只做了解)  ...