1、File
在进行文件上传和下载的时候肯定是需要File类的。File类的对象可以对目录进行相关的操作。可以进行创建、读取和删除目录,也可以删除文件。
File类里创建文件夹的方法有两个:mkdir()和mkdirs()。
读取目录的方法有isDirectory()(用于判断是否为一个File对象和目录)和list(),list用于检查一个文件夹中包含的内容,提取包含的文件和文件夹的列表。
删除文件使用java.io.File.delete()方法。
注:一个目录就是一个File对象,包含其他文件和文件夹。
创建文件夹
import java.io.File;
public class CreateDir {
public static void main(String args[]) {
String dirname = "/tmp/user/java/bin";
File d = new File(dirname);
// 现在创建目录
d.mkdirs();
}
}
1
2
3
4
5
6
7
8
9
10
读取目录
import java.io.File;
public class DirList {
public static void main(String args[]) {
String dirname = "/tmp";
File f1 = new File(dirname);
if (f1.isDirectory()) {
System.out.println("目录 " + dirname);
String s[] = f1.list();
for (int i = 0; i < s.length; i++) {
File f = new File(dirname + "/" + s);
if (f.isDirectory()) {
System.out.println(s + " 是一个目录");
} else {
System.out.println(s + " 是一个文件");
}
}
} else {
System.out.println(dirname + " 不是一个目录");
}
}
}
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
删除目录
import java.io.File;
public class DeleteFileDemo {
public static void main(String args[]) {
// 这里修改为自己的测试目录
File folder = new File("/tmp/java/");
deleteFolder(folder);
}
// 删除文件及目录
public static void deleteFolder(File folder) {
File[] files = folder.listFiles();
if (files != null) {
for (File f : files) {
if (f.isDirectory()) {
deleteFolder(f);
} else {
f.delete();
}
}
}
folder.delete();
}
}
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
2、FileOutputStream/FileInputStream
一个流被定义为一个数据系列。输入流从源数据读入数据,输出流用于向目标写入数据。
FileIutputStream从文件读取数据,对象可以用关键字new创建。有***多个构造方法***创建***输入流对象***。
a:字符串类型的文件名作为参数。
InputStream f = new FileInputStream("c:/java/hello");
1
b: 使用文件对象
File f = new File("c:/java/hello");
InputStream is = new FileInputStream(f);
1
2
得到对象之后,常用的方法有read(int t),从InputStream对象读取指定字节的数据,返回下一字节数据。若到末尾则返回***-1***;read(byte[] r),从***InputStream***读取***长度为r.length长度的字节***,返回读取的字节数。
FileOutputStream
该类相比FileInputStream多一个功能,就是在打开文件进行输出前,检查目标文件是否存在。不存在的话则会创建应该文件。
同FileInputStream,创建对象有两个方法。
a:字符串类型的文件名作为参数
OutputStream f = new FileOutputStream("c:/java/hello");
1
b: 使用一个文件对象
File f = new File("c:/java/hello");
OutputStream os = new FileOutputStream(f);
1
2
得到OutputStream对象之后,常用的方法(和InputStream相对应)有write(int t)和write(byte[] b)。
write(int t) :把指定的字节写入到输出流
write(byte[] b):把指定数组中b.lenght长度的字节写入到OutputStream中。
---------------------
【转载,仅作分享,侵删】
作者:海绵爱上星
原文:https://blog.csdn.net/zzyssg/article/details/88577010
版权声明:本文为博主原创文章,转载请附上博文链接!
|
|