java File類的基本使用方法總結(jié)
Java IO中File的使用是比較頻繁的,在文件的上傳和刪除中都會用到的。比如我們在寫管理系統(tǒng)的時候有可能會用到圖片的上傳,和刪除。那么我們就會用到Java的 File來處理。
Java中File的基本使用創(chuàng)建和刪除文件:
public class FileDemo {
public static void main(String[] args) {
File f=new File("d:"+File.separator+"io.txt");
//File.separator 得到“\”
//File.pathSeparator得到是“;”
try {
f.createNewFile();
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
//等等一段時間,可以查看文件的生成
try {
Thread.sleep(3000);
} catch (InterruptedException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
if(f.exists()){
f.delete();
}else{
System.out.println("文件不存在");
}
}
}
Java File示例使用:在J2EE開發(fā)中使用的圖片上傳功能代碼:
public void fileUpload(@RequestParam MultipartFile[] myfiles,
HttpServletRequest request, HttpServletResponse response)
throws IOException {
String imgPath = "/uploads" + "/";
File directory = new File(request.getSession().getServletContext()
.getRealPath("/")
+ imgPath);
String desFileName = null;
String fileNewName = null;
response.setContentType("text/html; charset=UTF-8");
PrintWriter out = response.getWriter();
String originalFilename = null;
for (MultipartFile myfile : myfiles) {
if (myfile.isEmpty()) {
out.write("請選擇文件后上傳");
out.flush();
} else {
originalFilename = myfile.getOriginalFilename();
if (null != originalFilename && originalFilename.length() > 0) {
fileNewName = UUID.randomUUID() + originalFilename;
desFileName = directory.toString() + "/" + fileNewName;
}
try {
FileUtils.copyInputStreamToFile(myfile.getInputStream(),
new File(desFileName));
} catch (IOException e) {
e.printStackTrace();
out.write("文件上傳失敗,請重試?。?);
out.flush();
}
}
}
out.print(fileNewName);
out.flush();
}
并且其中文件夾生成的代碼如下:
File f1=new File("d:"+File.separator+"test");
f1.mkdir();
//獲取文件夾名稱的方法
f1.getName();
這是Java IO中的基礎(chǔ)使用,也是使用比較頻繁的部分。
以上就是本文的全部內(nèi)容,希望對大家的學(xué)習(xí)有所幫助。
相關(guān)文章
springboot?vue測試平臺接口定義及發(fā)送請求功能實(shí)現(xiàn)
這篇文章主要為大家介紹了springboot+vue測試平臺接口定義及發(fā)送請求功能實(shí)現(xiàn),有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪2022-05-05
SpringBoot整合mysql、postgres及sqlserver實(shí)現(xiàn)多數(shù)據(jù)源配置實(shí)戰(zhàn)案例
在工作中業(yè)務(wù)的發(fā)展或業(yè)務(wù)數(shù)據(jù)隔離的場景下,通常需要一個項(xiàng)目中引入多個數(shù)據(jù)源,但SpringBoot默認(rèn)的自動化配置是單數(shù)據(jù)源的,這篇文章主要給大家介紹了關(guān)于SpringBoot整合mysql、postgres及sqlserver實(shí)現(xiàn)多數(shù)據(jù)源配置的相關(guān)資料,需要的朋友可以參考下2023-12-12
SpringBoot中如何解決讀取properties文件讀取問題
這篇文章主要介紹了SpringBoot中如何解決讀取properties文件讀取問題,具有很好的參考價(jià)值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教2022-07-07
關(guān)于MyBatis plus條件構(gòu)造器的逐條詳解
什么是條件構(gòu)造器呢?簡單來說,條件構(gòu)造器就是用來生成我們查數(shù)據(jù)庫的sql。它可以簡化sql代碼的編寫,靈活、方便且易于維護(hù)2021-09-09
Mybatis實(shí)體類屬性與數(shù)據(jù)庫不一致解決方案
這篇文章主要介紹了Mybatis實(shí)體類屬性與數(shù)據(jù)庫不一致解決方案,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下2020-10-10
JVM教程之Java代碼編譯和執(zhí)行的整個過程(二)
這篇文章主要介紹了JVM學(xué)習(xí)筆記第二篇,關(guān)于Java代碼編譯和執(zhí)行的整個過程,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2017-03-03
手動編譯并運(yùn)行Java項(xiàng)目實(shí)現(xiàn)過程解析
這篇文章主要介紹了手動編譯并運(yùn)行Java項(xiàng)目實(shí)現(xiàn)過程解析,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下2020-10-10
SpringCloud @FeignClient注入Spring容器原理分析
本文詳細(xì)分析了Spring Boot中@FeignClient注解的掃描和注入過程,重點(diǎn)探討了@EnableFeignClients注解的工作原理,通過源碼分析,揭示了@EnableFeignClients如何通過@Import注解和FeignClientsRegistrar類實(shí)現(xiàn)bean定義的加載2024-12-12

