Java IO流 File類的常用API實(shí)例
•File類
1.只用于表示文件(目錄)的信息(名稱、大小等),不能用于文件內(nèi)容的訪問(wèn)。
package cn.test;
import java.io.File;
import java.io.IOException;
public class Demo16 {
public static void main(String[] args) {
File file = new File("F:\\javaio");
//文件(目錄)是否存在
if(!file.exists()) {
//創(chuàng)建目錄
file.mkdir();//file.mkdirs();
} else {
//文件(目錄)刪除
file.delete();
}
//是否是目錄 如果是目錄返回true,如果不是目錄或目錄不存在返回false
System.out.println(file.isDirectory());
//是否是文件
System.out.println(file.isFile());
//File file2 = new File("F:\\java\\日記1.txt");
File file2 = new File("F:\\javaio", "日記2.txt");
if (!file2.exists()) {
try {
//創(chuàng)建文件
file2.createNewFile();
} catch (IOException e) {
e.printStackTrace();
}
} else {
file2.delete();
}
System.out.println(file);
System.out.println(file.getAbsolutePath());//返回絕對(duì)路徑
System.out.println(file.getName());//目錄名稱
System.out.println(file2.getName());//文件名稱
System.out.println(file.getParent());//父級(jí)目錄的路徑
System.out.println(file.getParent());//父級(jí)目錄的路徑
}
}
2.遍歷目錄
package com.test.io;
import java.io.File;
import java.io.IOException;
/**
* File類的常用操作
* @author Administrator
*
*/
public class FileUtils {
/**
* 列出指定目錄下(包括其子目錄)的所有文件
* @param dir
* @throws IOException
*/
public static void listDirectory(File dir) throws IOException{
if (!dir.exists()) {
throw new IllegalArgumentException("目錄" + dir + "不存在");
}
if (!dir.isDirectory()) {
throw new IllegalArgumentException(dir + "不是目錄");
}
/* String[] filenames = dir.list();//返回的是字符串?dāng)?shù)組,列出當(dāng)前目錄下的子目錄和文件(不包含子目錄下的內(nèi)容)
for (String string : filenames) {
System.out.println(dir + "\\" +string);
} */
//如果要遍歷子目錄下的內(nèi)容,就需要構(gòu)造File對(duì)象做遞歸操作
File[] files = dir.listFiles();//返回的是直接子目錄(文件)的抽象
if (files != null && files.length > 0) {
for (File file : files) {
if (file.isDirectory()) {
//遞歸
listDirectory(file);
} else {
System.out.println(file);
}
}
}
}
}
以上所述是小編給大家介紹的Java IO流 File類的常用API實(shí)例,希望對(duì)大家有所幫助,如果大家有任何疑問(wèn)歡迎給我留言,小編會(huì)及時(shí)回復(fù)大家的!
相關(guān)文章
Java根據(jù)模板導(dǎo)出Excel報(bào)表并復(fù)制模板生成多個(gè)Sheet頁(yè)
本文主要介紹了Java根據(jù)模板導(dǎo)出Excel報(bào)表并復(fù)制模板生成多個(gè)Sheet頁(yè)的方法,具有很好的參考價(jià)值。下面跟著小編一起來(lái)看下吧2017-03-03
通過(guò)AOP環(huán)繞通知如何實(shí)現(xiàn)事務(wù)控制
這篇文章主要介紹了通過(guò)AOP環(huán)繞通知如何實(shí)現(xiàn)事務(wù)控制的操作,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2021-09-09
Mybatis批量更新對(duì)象數(shù)據(jù)的兩種實(shí)現(xiàn)方式
這篇文章主要介紹了Mybatis批量更新對(duì)象數(shù)據(jù)的兩種實(shí)現(xiàn)方式,具有很好的參考價(jià)值,希望對(duì)大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2024-08-08
springboot 日志實(shí)現(xiàn)過(guò)程
Spring Boot 使用 SLF4J 作為日志門面,Logback 或 Log4j2 作為日志實(shí)現(xiàn),日志門面提供統(tǒng)一接口,簡(jiǎn)化日志記錄,實(shí)現(xiàn)負(fù)責(zé)具體功能,Spring Boot 默認(rèn)使用 SLF4J 和 Logback,可以通過(guò)配置文件或注解進(jìn)行日志記錄和控制,感興趣的朋友一起看看吧2025-01-01
Spring使用Redis限制用戶登錄失敗的次數(shù)及暫時(shí)鎖定用戶登錄權(quán)限功能
這篇文章主要介紹了Spring使用Redis限制用戶登錄失敗的次數(shù)及暫時(shí)鎖定用戶登錄權(quán)限功能,本文通過(guò)實(shí)例代碼給大家介紹的非常詳細(xì),需要的朋友可以參考下2024-02-02
Java Web學(xué)習(xí)教程之Hibernate And MyBatis的理解
這篇文章主要給大家介紹了關(guān)于Java Web學(xué)習(xí)教程之Hibernate And MyBatis的相關(guān)資料,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們來(lái)一起學(xué)習(xí)學(xué)習(xí)吧。2018-04-04
JPA之多對(duì)多查詢死循環(huán)嵌套問(wèn)題及解決方案
這篇文章主要介紹了JPA之多對(duì)多查詢死循環(huán)嵌套問(wèn)題及解決方案,具有很好的參考價(jià)值,希望對(duì)大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2024-05-05

