java学习笔记:File类

Java IO概述
IO是input、ouput的缩写,指应用程序与外部设备间的输入与输出。与应用程序交互最频繁的外部设备就是磁盘,java中有专门的io包管理磁盘的操作。包java.io通过如下类完成对磁盘操作的管理:File、FileDescriptor 、FileInputStream、FileOutputStream、RamdomAccessFile以及接口 FilenameFilter。

File类的使用
类 File 提供了一种与机器无关的方式来描述一个文件对象的属性。通过类File所提供的方法,可以得到文件的描述信息,包括名称、所在路径、可读性、可写性、长度等,还可以对文件进行各种操作:生成新文件、改变文件名、删除文件等。

对于目录,Java把它简单地处理为一种特殊的文件,即文件名的列表,也用File类进行表示。通过File类提供的方法,可以对目录进行创建、遍历等操作。

java对路径分隔符的要求相当宽松,以下格式的路径表示java都能够正确识别并定位到同一个文件:


File f1 = new File(“d:\\1.txt”);
File f3 = new File(“d:/2.txt”);
File f2 = new File(“d://3.txt”);

示例代码:

/* 创建文件 */

public static void createFile() {
try {
File f1 = new File(“d:\\1.txt”);
File f2 = new File(“d:/2.txt”);
File f3 = new File(“d://3.txt”);
f1.createNewFile();
f2.createNewFile();
f3.createNewFile();
} catch (Exception e) {
e.printStackTrace();
}
}

/* 删除文件 */

public static void delFile() {
try {
File f1 = new File(“d:\\1.txt”);
File f2 = new File(“d:/2.txt”);
File f3 = new File(“d://3.txt”);
if (f1.exists()) {
f1.delete();
}
if (f2.exists()) {
f2.delete();
}
if (f3.exists()) {
f3.delete();
}

} catch (Exception e) {
e.printStackTrace();
}
}

/* 创建目录 */

public static void createFolder() {
try {
File f1 = new File(“d:\\folder1”);
File f2 = new File(“d:/folder2”);
File f3 = new File(“d://folder3”);
f1.mkdir();
f2.mkdir();
f3.mkdir();
} catch (Exception e) {
e.printStackTrace();
}

}

/* 删除目录 */

public static void delFolder() {
try {
File f1 = new File(“d:\\folder1”);
File f2 = new File(“d:/folder2”);
File f3 = new File(“d://folder3”);
if (f1.exists()) {
f1.delete();
}
if (f2.exists()) {
f2.delete();
}
if (f3.exists()) {
f3.delete();
}
} catch (Exception e) {
e.printStackTrace();
}
}

/* 获得文件属性 */

public static void getFileProperies() {
try {
File f1 = new File(“d:\\1.txt”);
if (!f1.exists()) {
f1.createNewFile();
}
f1.setReadOnly();

if (f1.isFile()) {
System.out.println(“f1.txt是文件”);
} else if (f1.isDirectory()) {
System.out.println(“f1.txt是目录”);
}

if (f1.canRead()) {
System.out.println(“f1.txt可读取”);
} else {
System.out.println(“f1.txt不可读取”);
}

if (f1.canWrite()) {
System.out.println(“f1.txt可写入”);
} else {
System.out.println(“f1.txt不可写入”);
}
if (f1.isHidden()) {
System.out.println(“f1.txt是隐藏文件”);
} else {
System.out.println(“f1.txt不是隐藏文件”);
}

} catch (Exception e) {
e.printStackTrace();
}
}

File类的方法基本上都是见名知义的,但有几点需要注意:

1:如果目录不为空则该目录不能通过File.delete()方法删除;
2:File类的方法只能对文件本身属性进行操作,而不能对文件内容进行操作。

此条目发表在java/j2ee分类目录,贴了, 标签。将固定链接加入收藏夹。

发表评论

您的电子邮箱地址不会被公开。

此站点使用Akismet来减少垃圾评论。了解我们如何处理您的评论数据