File类
示例代码01:
public class FileTest01 {
public static void main(String[] args) {
File file = new File("file");
if(!file.exists()) {
file.mkdir();
}
if(!file.exists()){
file.mkdirs();
}
String parent = file.getParent();
System.out.println(parent);
File absoluteFile = file.getAbsoluteFile();
System.out.println("文件的绝对路径为:" + absoluteFile);
String absolutePath = file.getAbsolutePath();
System.out.println("文件的绝对路径为:" + absolutePath);
}
}
运行结果:
![在这里插入图片描述](https://i-blog.csdnimg.cn/blog_migrate/65642a44196a313d3f996e0a1ba51c13.png)
File类的常用方法
示例代码02:
public class FileTest02 {
public static void main(String[] args) {
File file = new File("D:\\必须软件\\毕业设计\\基于JSP的公司文档管理系统的设计与实现.doc");
String fileName = file.getName();
System.out.println("文件名:" + fileName);
System.out.println(file.isDirectory());
System.out.println(file.isFile());
long time = file.lastModified();
Date date = new Date(time);
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH-mm-ss SSS");
String nowtime = sdf.format(date);
System.out.println(nowtime + " " + file.getName());
}
}
运行结果:
![在这里插入图片描述](https://i-blog.csdnimg.cn/blog_migrate/62d31478e9ab45d5c1e86f2552faac0c.png)
File中的listFiles方法。
示例代码03:
public class FileTest03 {
public static void main(String[] args) {
File f = new File("D:\Markdown");
File[] files = f.listFiles();
for(File file : files){
System.out.println(file.getName());
}
}
}
运行结果:
![在这里插入图片描述](https://i-blog.csdnimg.cn/blog_migrate/25948f9420c85b8ec54cd6feef6893d0.png)
使用File类进行目录拷贝
示例代码04:
public class CopyAll {
public static void main(String[] args) {
File srcFile = new File("E:\\JavaWeb\\技术文档课件");
File destFile = new File("F:\\");
copyDir(srcFile,destFile);
}
public static void copyDir(File srcFile, File destFile) {
if(srcFile.isFile()){
FileInputStream in = null;
FileOutputStream out = null;
try {
in = new FileInputStream(srcFile);
String path = (destFile.getAbsolutePath().endsWith("\\") ? destFile.getAbsolutePath() : destFile.getAbsolutePath() + "\\") + srcFile.getAbsolutePath().substring(3);
out = new FileOutputStream(path);
byte[] bytes = new byte[1024 * 1024];
int readCount = 0;
while((readCount = in.read(bytes)) != -1){
out.write(bytes, 0, readCount);
}
out.flush();
} catch (FileNotFoundException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
} finally {
if(out != null){
try {
out.close();
} catch (IOException e) {
e.printStackTrace();
}
}
if(in != null){
try {
in.close();
} catch (IOException e) {
e.printStackTrace();
}
}
}
return;
}
File[] files = srcFile.listFiles();
for(File file : files){
if(file.isDirectory()){
String srcDir = file.getAbsolutePath();
String destDir = (destFile.getAbsolutePath().endsWith("\\") ? destFile.getAbsolutePath() : destFile.getAbsolutePath() + "\\") + srcDir.substring(3);
File newFile = new File(destDir);
if(!newFile.exists()){
newFile.mkdirs();
}
}
copyDir(file, destFile);
}
}
}
拷贝结果:
![在这里插入图片描述](https://i-blog.csdnimg.cn/blog_migrate/64c0ae5d8f6e68c9204cd892c47b748d.png)