File类详解
一、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类详解的更多相关文章
- JavaIO(01)File类详解
File类 file类中的主要方法和变量 常量: 表示路径的分割符:(windows) 作用:根据java可移植性的特点,编写路径一定要符合本地操作系统要求的分割符: public static ...
- File类 详解!
package cn.zhoucufeng; import java.io.File; import java.io.IOException; import java.util.Arrays; imp ...
- 【56】java本地文件File类详解
1.java类的介绍 public class File extends Object implements Serializable, Comparable<File> 文件和目录路径名 ...
- java中File类详解
构造函数 代码如下: public class FileDemo { public static void main(String[] args){ //构造函数File(St ...
- Java之File类详解
常用操作: File f = new File("C:\\testdata\\filedir\\a\\b\\c"); f.mkdir(); //建立单级目录 f.mkdirs(); ...
- QAction类详解:
先贴一段描述:Qt文档原文: Detailed Description The QAction class provides an abstract user interface action tha ...
- JAVAEE学习——struts2_01:简介、搭建、架构、配置、action类详解和练习:客户列表
一.struts2是什么 1.概念 2.struts2使用优势以及历史 二.搭建struts2框架 1.导包 (解压缩)struts2-blank.war就会看到 2.书写Action类 public ...
- URLConnection类详解-转
转-http://www.cnblogs.com/shijiaqi1066/p/3753224.html 1. URLConnection概述 URLConnection是一个抽象类,表示指向URL指 ...
- JDK中Unsafe类详解
Java中Unsafe类详解 在openjdk8下看Unsafe源码 浅析Java中的原子操作 Java并发编程之LockSupport http://hg.openjdk.java.net/jdk7 ...
随机推荐
- Kafka笔记--参数说明及Demo
参考资料:http://blog.csdn.net/honglei915/article/details/37563647参数说明:http://ju.outofmemory.cn/entry/119 ...
- FLASH驱动之-块设备驱动系统构架
一. 块设备是只能以块为单位进行访问的设备,块的大小一般是512个字节的整数倍,常见的块设备包括硬件,SD卡,光盘,flash等.驱动程序是块的整数倍从设备读写得到数据.块设备的最小访单位为块,不同 ...
- TestNG使用Eclipse建立Test Case - 就是爱Java
除了JUnit可以进行单元测试外,还可以使用TestNG来撰写Test Case,这是另一种测试Framework,它是为更广泛的测试场合而设计,可以运行在没有修改过的JUnit测试,除非看到它们的i ...
- 自制单片机之十三……时钟IC_DS1302
在网上看了很久,发现初学者最有兴趣的就是DS1302时钟电路,也很自然,它是个做出来就让你觉得最实用的电路了,但实际上制做上并不简单,首先你要让你的显示部分(不管是数码管还是LCD)调试通过.然后把D ...
- KEIl混合编程步骤详解
一.在keil中C函数调用汇编函数: 主要思路:先用C来编写所要实现及调用的汇编函数,然后由此C函数生成相应的汇编代码,这样我们就可以不用去管混合编程调用时复杂的函数接口,我们只要修改相应汇编函数中的 ...
- Verdigris: Qt without moc
https://woboq.com/blog/verdigris-qt-without-moc.html https://github.com/woboq/verdigris
- hdu2460-Network:边的双连通分量
题目大意:给出一个无向图以及Q次询问,每次询问增加一条无向边,要求输出增加这条边后剩余的桥的数目. 算法:类似于求割点的方法,先做一次dfs求出所有的桥,并且维护这棵dfs树,当一次询问加入一条边(a ...
- 第35讲 Activity入门和跳转
第35讲Activity入门和跳转 1.Activity Activity是用户接口程序.在Android当中,Activity提供可视化的用户界面,一个Android应用通常由多个activity组 ...
- RequireJS入门(一)
RequireJS由James Burke创建,他也是AMD规范的创始人. RequireJS会让你以不同于往常的方式去写JavaScript.你将不再使用script标签在HTML中引入JS文件,以 ...
- vagrant拷贝后vagrant file需要加的配置
config.ssh.forward_agent config.ssh.username = "vagrant" config.ssh.password = "vagra ...