import java.io.*; public class Test{ public static void main(String args[]) { FileInputStream in=null; FileOutputStream out=null; File fSource=new File("d:"+File.separator+"my.jpg"); File fDest=new File("d:"+File.separator+"java"+File.separator+"my.jpg"); if(!fSource.exists()){ System.out.println("源文件不存在"); System.exit(1); } if(!fDest.getParentFile().exists()){ fDest.getParentFile().mkdirs(); } try { in=new FileInputStream(fSource); out=new FileOutputStream(fDest); int len=0; long begintime = System.currentTimeMillis(); while((len=in.read())!=-1){ out.write(len); } long endtime = System.currentTimeMillis(); System.out.println("文件拷貝完成,耗時" +(endtime-begintime)+"毫秒"); }catch(Exception e){ System.out.println("文件操做失敗"); }finally{ try { in.close(); out.close(); } catch (IOException e) { e.printStackTrace(); } } } }
public BufferedInputStream(InputStream in)建立一個 BufferedInputStream 並保存其參數,即輸入流 in,以便未來使用。建立一個內部緩衝區數組並將其存儲在 buf 中。java
參數:
in - 底層輸入流。
數據庫
使用BufferedInputStream和BufferedOutputStream類編寫程序:數組
public class Test{ public static void main(String args[]) { FileInputStream in=null; FileOutputStream out=null; File fSource=new File("d:"+File.separator+"my.jpg"); File fDest=new File("d:"+File.separator+"java"+File.separator+"my.jpg"); if(!fSource.exists()){ System.out.println("源文件不存在"); System.exit(1); } if(!fDest.getParentFile().exists()){ fDest.getParentFile().mkdirs(); } try { in=new FileInputStream(fSource); out=new FileOutputStream(fDest); byte[] buff=new byte[1024]; int len=0; long begintime = System.currentTimeMillis(); while((len=in.read(buff))!=-1){ out.write(buff,0,len); } long endtime = System.currentTimeMillis(); System.out.println("文件拷貝完成,耗時" +(endtime-begintime)+"毫秒"); }catch(Exception e){ System.out.println("文件操做失敗"); }finally{ try { in.close(); out.close(); } catch (IOException e) { e.printStackTrace(); } } } }
建立一個新的緩衝輸出流,以將數據寫入指定的底層輸出流。
參數:
out - 底層輸出流。工具
System類對IO的支持:System類是一個強大,特殊的類,它提供了標準輸入輸出、運行時的系統信息等重要工具。System類中定義了三個常量:public static PrintStream err;public static InputStream in;public static PrintStream out;
思惟導圖很好的幫助我整理清楚學習的思路,明確學習的內容。學習
1.寵物商店:在實驗八的基礎上,增長一個功能,用文件保存每日的交易信息記錄。
2.完成文件複製操做,在程序運行後,提示輸入源文件路徑和目標文件路徑。測試
完成實驗內容,代碼上傳到碼雲,注意,寵物商店要求務必將建立數據庫的腳本文件隨項目文件一塊兒上傳,在隨筆中分析程序設計思路,用PowerDesigner畫出類圖結構,並對完成實驗內容過程當中遇到的問題、解決方案和思考等進行概括總結,注意代碼中必須有必要的註釋。
格式以下:
程序設計思路:新建一個SellPetItem類,存儲用戶購買信息。新建一個FileUtils類將用戶購買信息存儲到本地文件中,若是存在文件採用修改文件的方式,若是不存在文件採用新建文件的方式。建立項目運行類,定義MainApp方法,進行測試。定義copy類,複製並保存每日的交易信息記錄的文件。設計