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 ...
随机推荐
- MySQL锁等待分析【1】
场景: 昨天业务系统上遇到了数据库慢的问题(对dcsdba.og_file_audit表的insert 慢&超时).分析后定位到是由于锁等待造成的.分析过程如下: 1.执行show proce ...
- 在NGINX上配置HTTPS---血的教训--要重启NGINX
重启,不是重载!!! 是STOP & START 而不是RELOAD!!! 纠结了好几天...(难道有的NGINX上不用重启????) 你妹的,上次也是,,PHP-FPM,将一个PHP的程序连 ...
- Hadoop:Task process exit with nonzero status of 1 异常
在运行hadoop程序时经常遇到异常 java.io.IOException: Task process exit with nonzero status of 1.网上很多博文都说是磁盘不够的问题. ...
- bzoj1619[Usaco2008 Nov]Guarding the Farm 保卫牧场
Description The farm has many hills upon which Farmer John would like to place guards to ensure the ...
- Android:TextView跑马灯-详解
Android:TextView跑马灯_详解 引言: TextView之所以需要跑马灯,是由于文字太长,或者是吸引眼球. 关键代码如下: android:singleLine="true&q ...
- usaco5.5-Picture
离散化计算重叠矩形的周长. 称平行于x轴的边为横边,我们以横边为例,某一矩形中y坐标比较小的横边我们称为始边,另一边我们称为终边.用一条扫描线从下往上扫描,当扫到一条始边的时候,如果这条始边的正下方出 ...
- Android应用开发提高系列(4)——Android动态加载(上)——加载未安装APK中的类
前言 近期做换肤功能,由于换肤程度较高,受限于平台本身,实现起来较复杂,暂时搁置了该功能,但也积累了一些经验,将分两篇文章来写这部分的内容,欢迎交流! 关键字:Android动态加载 声明 欢迎转载, ...
- Notification (通知)的 新版和旧版用法
Notification (通知)的 新版和旧版用法 一.先来看旧版,Api 11 之前的用法: NotificationManager manager = (NotificationManage ...
- 关于java中根据身份证求生日和年龄的问题
/*这个也没什么大的功能,也没什么安全验证,只是对输入的身份证号码的长度进行了验证.其他的功能可以自己添加.*/import java.util.*; import java.util.Scanner ...
- WebApi2官网学习记录---Content Negotiation
Content Negotiation的意思是:当有多种Content-Type可供选择时,选择最合适的一种进行序列化并返回给client. 主要依据请求中的Accept.Accept-Charset ...