一、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. Java并发编程--线程封闭(Ad-hoc封闭 栈封闭 ThreadLocal)

    线程封闭实现好的并发是一件困难的事情,所以很多时候我们都想躲避并发.避免并发最简单的方法就是线程封闭.什么是线程封闭呢?就是把对象封装到一个线程里,只有这一个线程能看到此对象.那么这个对象就算不是线程 ...

  2. JavaWeb学习笔记--跳转方法小结

    服务端跳转:1. RequestDispatcher.forward()  public void doGet(HttpServletRequest request, HttpServletRespo ...

  3. Linux的标准输出、标准错误输出、nohup

    1.在bash中标准输出可以用1来表示:通常来说这个1可以省略: 如./xxx >/dev/null 和 ./xxx 1>/dev/null 是一个意思 2.在bash中标准错误输出可以用 ...

  4. 设置ListView每条数据之间的间隔

    1:如果不需要分割线可以在xml布局文件中ListView下设置XML属性: android:divider="#00000000" android:dividerHeight=& ...

  5. Qt浅谈之四十五QSplitter实现自由伸缩滑动窗口

    一.简介 最近看到一篇Qt实现伸缩滑动的窗口的文章,但其代码不完整.便在此重新书写了完整的代码,并开源出来.窗口的中央有滑动条可以动态改变子窗口的大小,隐藏的按钮可以快速伸缩子窗口.其效果图如下: 二 ...

  6. qt http 上传文件

    //Qt文件 QFile file("1.jpg"); if(!file.open (QIODevice::ReadOnly)){     qDebug()<<&quo ...

  7. smarty 从配置文件读取变量

    smarty变量分3种: Variables [变量] Variables assigned from PHP [从PHP分配的变量] Variables loaded from config fil ...

  8. js全局函数

    http://www.w3cschool.cc/jsref/jsref-obj-global.html 以前没搞懂JS的全局函数,全局函数和window对象的函数不一样.全局函数不属于任何一个内置对象 ...

  9. Memcached和Redis异同

    在考虑对应用程序的性能表现进行提升时,缓存机制往往是解决问题的重要起点,而Memcached与Redis则经常被作为初步方案来加以比较.这两套声名显赫的缓存引擎拥有着诸多相似之处,但它们同样也具备大量 ...

  10. cf437D The Child and Zoo

    D. The Child and Zoo time limit per test 2 seconds memory limit per test 256 megabytes input standar ...