Java利用File類創(chuàng)建文件的示例代碼
只需要調(diào)用該類的一個(gè)方法createNewFile(),但是在實(shí)際操作中需要注意一些事項(xiàng),如判斷文件是否存在,以及如何向新建文件中寫(xiě)入數(shù)據(jù)等。
import java.io.*; public class CreateNewFile{ //該方法用于創(chuàng)建文件,參數(shù)分別是文件路徑和文件名、文件內(nèi)容,如:myfile.doc HelloJava! public void createNewFile(String fileDirectoryAndName,String fileContent){ try{ String fileName = fileDirectoryAndName File myFile = new File(fileName);//創(chuàng)建File對(duì)象,參數(shù)為String類型,表示目錄名 //判斷文件是否存在,如不存在則調(diào)用createNewFile()創(chuàng)建新目錄,否則跳至異常處理代碼 if(!myFile.exists()) myFile.createNewFile(); else //如果不存在則扔出異常 throw new Exception("The new file already exists!"); //下面把數(shù)據(jù)寫(xiě)入創(chuàng)建的文件,首先新建文件名為參數(shù)創(chuàng)建FileWriter對(duì)象 FileWriter resultFile = new FileWriter(myFile); //把該對(duì)象包裝進(jìn)PrinterWriter對(duì)象 PrintWriter myNewFile = new PrintWriter(resultFile); //再通過(guò)PrinterWriter對(duì)象的println()方法把字符串?dāng)?shù)據(jù)寫(xiě)入新建文件 myNewFile.println(fileContent); resultFile.close(); //關(guān)閉文件寫(xiě)入流 }catch(Exception ex){ System.out.println("無(wú)法創(chuàng)建新文件!"); ex.printStackTrace(); } } public static void main(String[] args){ //創(chuàng)建類的對(duì)象并調(diào)用該對(duì)象的createNewFile()方法,創(chuàng)建新文件并寫(xiě)入數(shù)據(jù) CreateNewFile createFile = new CreateNewFile(); createFile.createNewFile(args[0],args[1]); } }
執(zhí)行該程序,在執(zhí)行代碼后直接輸入兩個(gè)參數(shù),第一個(gè)參數(shù)是文件名,此時(shí)需要注明文件類型,這里創(chuàng)建的word文檔;第二個(gè)參數(shù)是文件的內(nèi)容,該參數(shù)是一個(gè)字符串?dāng)?shù)據(jù)。
如:myfile.doc HelloJava!
注意:在通過(guò)文件路徑和文件創(chuàng)建File時(shí)的分隔符可以為“//”或者File.separator
public class FileDemo { public static void main(String[] args){ //構(gòu)造函數(shù)File(String pathname) File f1 =new File("c:\\abc\\1.txt"); //File(String parent,String child) File f2 =new File("c:\\abc","2.txt"); //File(File parent,String child) File f3 =new File("c:"+File.separator+"abc");//separator 跨平臺(tái)分隔符 File f4 =new File(f3,"3.txt"); System.out.println(f1);//c:\abc\1.txt } }
以下代碼包括了File的創(chuàng)建以及讀寫(xiě)。
public class Test { public static void main(String[] args) { String lujing = "d:\\test\\ss\\ss.txt"; File file = new File(lujing); if (!file.getParentFile().exists()) { file.getParentFile().mkdirs(); } try { file.createNewFile(); } catch (IOException e) { e.printStackTrace(); } try { FileWriter fw = new FileWriter(file, true); BufferedWriter bw = new BufferedWriter(fw); bw.write("kingid"); bw.flush(); bw.close(); fw.close(); } catch (IOException e) { e.printStackTrace(); } try { FileReader fr = new FileReader(file); BufferedReader bReader = new BufferedReader(fr); String string = bReader.readLine(); System.out.println(string); } catch (FileNotFoundException e) { e.printStackTrace(); } catch (IOException e) { e.printStackTrace(); } } }
到此這篇關(guān)于Java利用File類創(chuàng)建文件的示例代碼的文章就介紹到這了,更多相關(guān)Java File類創(chuàng)建文件內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
Java實(shí)現(xiàn)解析JSON大文件JsonReader工具詳解
這篇文章主要介紹了Java實(shí)現(xiàn)解析JSON大文件的工具JsonReader使用方法,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)吧2023-01-01Springboot事件和bean生命周期執(zhí)行機(jī)制實(shí)例詳解
這篇文章主要介紹了Springboot事件和bean的生命周期執(zhí)行機(jī)制,本文給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2023-03-03基于idea把springboot項(xiàng)目部署到docker
這篇文章主要介紹了基于idea把springboot項(xiàng)目部署到docker,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下2020-01-01java開(kāi)源調(diào)度如何給xxljob加k8s執(zhí)行器
這篇文章主要介紹了java開(kāi)源調(diào)度如何給xxljob加一個(gè)k8s執(zhí)行器,?xxljob?在設(shè)計(jì)上,抽象出了執(zhí)行器的接口,所以實(shí)現(xiàn)一個(gè)語(yǔ)言的執(zhí)行器并不復(fù)雜,這里主要探索下,如何利用k8s的pod?的能力,使用?xxljob?調(diào)度?pod?運(yùn)行,實(shí)現(xiàn)一個(gè)通用的和語(yǔ)言無(wú)關(guān)的執(zhí)行器2022-02-02Java 數(shù)據(jù)結(jié)構(gòu)與算法系列精講之KMP算法
在很多地方也都經(jīng)??吹街v解KMP算法的文章,看久了好像也知道是怎么一回事,但總感覺(jué)有些地方自己還是沒(méi)有完全懂明白。這兩天花了點(diǎn)時(shí)間總結(jié)一下,有點(diǎn)小體會(huì),我希望可以通過(guò)我自己的語(yǔ)言來(lái)把這個(gè)算法的一些細(xì)節(jié)梳理清楚,也算是考驗(yàn)一下自己有真正理解這個(gè)算法2022-02-02如何利用 Either 和 Option 進(jìn)行函數(shù)式錯(cuò)誤處理
這篇文章主要介紹了如何利用 Either 和 Option 進(jìn)行函數(shù)式錯(cuò)誤處理。在 Java 中,錯(cuò)誤的處理在傳統(tǒng)上由異常以及創(chuàng)建和傳播異常的語(yǔ)言支持進(jìn)行。但是,如果不存在結(jié)構(gòu)化異常處理又如何呢?,需要的朋友可以參考下2019-06-06深入理解MyBatis中的一級(jí)緩存與二級(jí)緩存
這篇文章主要給大家深入的介紹了關(guān)于MyBatis中一級(jí)緩存與二級(jí)緩存的相關(guān)資料,文中詳細(xì)介紹MyBatis中一級(jí)緩存與二級(jí)緩存的工作原理及使用,對(duì)大家具有一定的參考性學(xué)習(xí)價(jià)值,需要的朋友們下面來(lái)一起看看吧。2017-06-06springmvc json類型轉(zhuǎn)換錯(cuò)誤解決方案
這篇文章主要介紹了springmvc json類型轉(zhuǎn)換錯(cuò)誤解決方案,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下2019-12-12