一、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. Kafka笔记--参数说明及Demo

    参考资料:http://blog.csdn.net/honglei915/article/details/37563647参数说明:http://ju.outofmemory.cn/entry/119 ...

  2. FLASH驱动之-块设备驱动系统构架

    一.  块设备是只能以块为单位进行访问的设备,块的大小一般是512个字节的整数倍,常见的块设备包括硬件,SD卡,光盘,flash等.驱动程序是块的整数倍从设备读写得到数据.块设备的最小访单位为块,不同 ...

  3. TestNG使用Eclipse建立Test Case - 就是爱Java

    除了JUnit可以进行单元测试外,还可以使用TestNG来撰写Test Case,这是另一种测试Framework,它是为更广泛的测试场合而设计,可以运行在没有修改过的JUnit测试,除非看到它们的i ...

  4. 自制单片机之十三……时钟IC_DS1302

    在网上看了很久,发现初学者最有兴趣的就是DS1302时钟电路,也很自然,它是个做出来就让你觉得最实用的电路了,但实际上制做上并不简单,首先你要让你的显示部分(不管是数码管还是LCD)调试通过.然后把D ...

  5. KEIl混合编程步骤详解

    一.在keil中C函数调用汇编函数: 主要思路:先用C来编写所要实现及调用的汇编函数,然后由此C函数生成相应的汇编代码,这样我们就可以不用去管混合编程调用时复杂的函数接口,我们只要修改相应汇编函数中的 ...

  6. Verdigris: Qt without moc

    https://woboq.com/blog/verdigris-qt-without-moc.html https://github.com/woboq/verdigris

  7. hdu2460-Network:边的双连通分量

    题目大意:给出一个无向图以及Q次询问,每次询问增加一条无向边,要求输出增加这条边后剩余的桥的数目. 算法:类似于求割点的方法,先做一次dfs求出所有的桥,并且维护这棵dfs树,当一次询问加入一条边(a ...

  8. 第35讲 Activity入门和跳转

    第35讲Activity入门和跳转 1.Activity Activity是用户接口程序.在Android当中,Activity提供可视化的用户界面,一个Android应用通常由多个activity组 ...

  9. RequireJS入门(一)

    RequireJS由James Burke创建,他也是AMD规范的创始人. RequireJS会让你以不同于往常的方式去写JavaScript.你将不再使用script标签在HTML中引入JS文件,以 ...

  10. vagrant拷贝后vagrant file需要加的配置

    config.ssh.forward_agent config.ssh.username = "vagrant" config.ssh.password = "vagra ...