北大青鳥北京校區(qū)學(xué)術(shù)部講解:如何在java中文件操作.doc
北大青鳥北京校區(qū)學(xué)術(shù)部老師說明:在java中文件操作,創(chuàng)建文件的時(shí)候注意:舉個(gè)例子說明問題
將c:\temp.txt文件 copy 到D:\test\java\file\這個(gè)目錄下創(chuàng)建一個(gè)文件:temp.txt。
這樣容易遺漏掉一個(gè)問題:
如果不存在路徑d:\text\java\file。也就是說d盤肯可能根本就沒有text這個(gè)文件夾,或者d:\text文件夾內(nèi)沒有java文件夾,或者d:\text\java文件夾沒有file文件夾。會(huì)出現(xiàn)什么情況?
許多同學(xué)們認(rèn)為系統(tǒng)會(huì)幫助我們創(chuàng)建,其實(shí),不是的。
如果在目的地沒有這個(gè)路徑,會(huì)出現(xiàn)FileNotFound異常。
因此,
北大青鳥北京校區(qū)老師提醒:所有在進(jìn)行文件創(chuàng)建操作一定要分為兩步:
1.判斷是否路徑存在 2.創(chuàng)建文件
String filePath = "d:\\text\java\file\\temp.txt";
String dirPath = filePath.substring(filePath,0,filePath.lastIndexOf("\\"));
File dir = new File(dirPath);//1.創(chuàng)建文件所在的目錄
if(!dir.exists()){
dir.mkdirs();//注意mkdir()方法的區(qū)別
}
File file = new File(filePath);
if(!file.exists()){
file.createNewFile();
}FileInputStream in = new FileInputStream(new File("c:\\temp.txt"));
FileOutputStream out = new FileOutputStream(file);
int len = 0;
byte[] buffer = new byte[128];
while((len=in.read(buffer))>0){
out.write(buffer,0,len);
}
以上內(nèi)容由
北大青鳥北京校區(qū)學(xué)術(shù)部提供