資源描述:
《JAVA程序設(shè)計(jì)基礎(chǔ)第9章Java輸入輸出》由會(huì)員上傳分享,免費(fèi)在線閱讀,更多相關(guān)內(nèi)容在教育資源-天天文庫。
1、第9章Java輸入輸出9.1Java輸入輸出概述9.2文件處理9.3目錄管理9.1Java輸入輸出概述9.1.1輸入輸出流基本概念9.1.2輸入輸出流類9.1.3標(biāo)準(zhǔn)輸入輸出9.2文件處理9.2.1File類文件處理是最常見的I/O處理,在編程過程中,經(jīng)常需要對(duì)文件進(jìn)行操作。在對(duì)文件進(jìn)行操作前,必須先獲得有關(guān)文件的基本信息,如文件的名稱、路徑,文件的長(zhǎng)度及文件是否可讀可寫等。在Java語言中,java.io包中的File類實(shí)現(xiàn)了這一功能。File類通過文件名列表來描述一個(gè)文件對(duì)象的屬性。通過File類提供的方法可以獲得文件夾的基本信息,還可對(duì)文件進(jìn)行復(fù)制、刪除等操作。需要說明的一點(diǎn)是,Jav
2、a語言將目錄看作是一種特殊的文件。在下面的講述中,我們統(tǒng)稱為文件,只在需要時(shí)加以區(qū)分。File類提供了與具體平臺(tái)無關(guān)的方式來描述文件對(duì)象屬性。下面是File類中的部分主要方法。1.構(gòu)造方法文件對(duì)象的生成是通過File類的構(gòu)造文件完成的。File類提供了以下3種構(gòu)造方法。(1)publicFile(Stringpathname);參數(shù)pathname指明新創(chuàng)建的文件對(duì)象對(duì)應(yīng)的磁盤文件及其路徑名。路徑可以是絕對(duì)路徑也可以是相對(duì)路徑。一般地,為提高程序的可移植性,建議使用相對(duì)路徑。例如:FilemyFile1=newFile("test.txt");//相對(duì)路徑,在當(dāng)前目錄下創(chuàng)建新文件,名為tes
3、t.txtFilemyFile2=newFile("c:\temp\test.txt");//絕對(duì)路徑,在C盤的java目錄下創(chuàng)建新文件,名為test.txt(2)publicFile(Stringpathname,Stringname);參數(shù)pathname指明新創(chuàng)建的文件對(duì)象所對(duì)應(yīng)的文件所在的路徑,可以是絕對(duì)路徑或相對(duì)路徑。參數(shù)name指明新創(chuàng)建的文件對(duì)象所對(duì)應(yīng)文件的名稱。將路徑和名稱分開可使具有相同路徑的文件具有同一個(gè)路徑字符串,而且方便管理。例如:FilemyFile=newFile("c:java","test.txt");(3)publicFile(Filedir,Stri
4、ngchildname);參數(shù)dir是一個(gè)File類對(duì)象,它代表一個(gè)已存在的磁盤目錄,該目錄作為文件的路徑。參數(shù)childname指明文件名。例如:Filedir=newFile("c:java");FilemyFile=newFile(dir,"test.txt");要對(duì)一個(gè)文件對(duì)象進(jìn)行操作,不可避免地要用到表9-2列出的方法。下面我們通過一個(gè)例子來說明這些方法如何使用。例9-2:使用File類方法的程序example9_2.java。importjava.io.*;publicclassexample9_2{publicstaticvoidmain(Stringargs[]){File
5、myFile=newFile("g:\test\test.txt");System.out.println(myFile+"文件存在嗎?"+myFile.exists());System.out.println("文件名:"+myFile.getName());System.out.println("文件的相對(duì)路徑:"+myFile.getPath());System.out.println("文件絕對(duì)路徑:"+myFile.getAbsolutePath());System.out.println("上一級(jí)目錄名:"+myFile.getParent());System.out.pri
6、ntln("文件長(zhǎng)度:"+myFile.length());System.out.println("是文件嗎?"+myFile.isFile());System.out.println("是目錄嗎?"+myFile.isDirectory());System.out.println("是否可寫?"+myFile.canWrite());System.out.println("是否可讀?"+myFile.canRead());Filefile1=newFile("file.txt");System.out.println("將文件"+myFile+"改名為"+file1);myFile.ren
7、ameTo(file1);System.out.println("新文件名:"+file1.getName());System.out.println(myFile+"文件是否存在?"+myFile.exists());System.out.println("刪除文件"+file1);file1.delete();System.out.println(file1+"文件是否存在?"+file1.exists(