File类是表示文件和目录名的抽象表示形式。File类可以实现文件的创建,删除,重命名,获取路径,创建时间等等,是唯一一个与文件本身有关的操作。所以有必要好好学习File类。
主要使用方法:
1.public File(String pathname)----根据文件路径构造File实例
2.public boolean createNewFile()throws IOException-----创建文件
3.public boolean delete()----------删除文件
4.public String getParent()----------得到文件的上一级路径
5.public boolean isDirectory()------判断是不是文件夹
6.public boolean isFile()------判断是不是文件
7.public String[]list()------------列出文件夹中的文件名
8.public File[] listFile()------------列出文件夹的所有文件实例
9.public boolean mkdir()----------创建文件夹
10.public boolean renameTo(File dest)-----文件重命名(可以理解移动文件)
11.public long length()-------返回文件大小
12.String getpath()-----------路径名字符串
示例代码:
package com;
import java.io.File;
import java.io.IOException;
public class Test {
public static void main(String[] args) {
//File.separator是跨平台的,在windows下为D:\\1.txt,linux下为D:/1.txt
File file=new File("D:"+File.separator+"1.txt");
//文件不存在
if(!file.exists())
{
try {
if(file.createNewFile())//创建文件
System.out.println("文件创建成功");
} catch (IOException e) {
e.printStackTrace();
}
}
//得到文件的上一级路径
System.out.println("上级目录:"+file.getParent());
//判断是否是目录
System.out.println("是否是目录:"+file.isDirectory());
//判断是否是文件
System.out.println("是否是文件:"+file.isFile());
//获取文件大小
System.out.println("文件大小为:"+file.length());
//文件路径
System.out.println(file.getPath());
//重命名,返回值为true时。相当于把D:\\1.txt移动到L:\\kk22.php
if(file.renameTo(new File("L:\\kk22.php")))
System.out.println("重命名成功");
else {
System.out.println("重命名失败");
}
//指向重命名的文件
file=new File("L:\\kk22.php");
if(file.delete())
System.out.println("文件删除成功");
//--------------------------------------目录演示
file=new File("L:"+File.separator+"javaTest");
//不存在
if(!file.exists())
{
file.mkdir();//创建该目录
}
//为该目录添加文件
String temp;
for(int i=0;i<4;i++)
{
temp="";
temp="L:"+File.separator+"javaTest"+File.separator+i+"txt";
File ok=new File(temp);
try {
ok.createNewFile();//创建该文件
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}//
}
//获取该目录下的文件名
String[] name=file.list();
for(int i=0;i<4;i++)
System.out.println(name[i]);
//获取该目录下的文件实例
File[] files=file.listFiles();
for(int i=0;i<4;i++)
System.out.println(files[i].getPath());
}
}
File只能获取文件路径创建时间等信息以及文件的创建和删除,不能对文件里面的具体内容实现获取和修改。
获取和修改文件的具体内容需要用到java的IO流。之后会讲解IO相关的操作。