版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)
文檔簡介
目錄第一章Java與程序邏輯第二章面向?qū)ο蟪绦蛟O(shè)計基礎(chǔ)第三章面向?qū)ο蠡咎匦缘谒恼鲁S脤ο笫褂玫谖逭庐惓L幚淼诹翴/O操作第七章多線程編程第八章Java的GUI可視界面編程第六章I/O操作21任務(wù)6.1文件管理任務(wù)6.2流操作文件任務(wù)6.3
對象的存儲3任務(wù)6.1文件管理4情境描述123問題分析解決方案知識總結(jié)5應(yīng)用實踐6.1.1情境描述針對工資管理中的數(shù)據(jù),只是臨時存儲在內(nèi)存中,在遇到斷電或者重啟系統(tǒng)之后將不再存在。要實現(xiàn)Windows下的數(shù)據(jù)持久,需要利用Java完成以下任務(wù):1)利用Java創(chuàng)建文件夾的操作2)利用Java進行文件創(chuàng)建操作3)實現(xiàn)文本的寫入操作4)實現(xiàn)文本的讀取操作6.1.2問題分析通過Java語言去完成文件夾及文件的創(chuàng)建任務(wù),需要借助java.io.File類來實現(xiàn)。File類提供文件的訪問及文件夾的創(chuàng)建操作,利用它能夠順利完成任務(wù),同樣還可以利用java.io下的RandomAccessFile類來實現(xiàn)對文件的隨機操作。6.1.3解決方案
1、打開Eclipse開發(fā)環(huán)境。2、新建“com.esms.file”包,用于文件操作類組織存儲。3、新建文件FileHelper.java,實現(xiàn)底層文件及文件夾的基本操作。4、利用File類完善文件及文件夾基本操作。5、在FileHelper類中創(chuàng)建Main函數(shù),測試功能是否正確。6、運行檢查在C盤下是否存在文件夾及文件。7、在FileHelper類中擴展文件寫入方法write。8、在FileHelper中添加read方法。9、測試文件讀寫是否正確。6.1.4知識總結(jié)1.文件計算機在存儲數(shù)據(jù)的時候,將所有的數(shù)據(jù)(包括字符)都以字節(jié)為單位進行存儲。所謂文件,抽象地來講,任何數(shù)據(jù)的集合都可以被看作文件。我們通常所談的“文件”多是指磁盤存儲系統(tǒng)上所存儲的數(shù)據(jù)(文件)。我們常常打開一個文件進行讀寫操作,而讀寫操作通常與輸入輸出相關(guān),即從輸入中讀數(shù)據(jù),向輸出中寫數(shù)據(jù)。6.1.4知識總結(jié)2.File類的使用(1)構(gòu)造方法(2)常用方法①文件信息②文件檢查③文件操作④目錄操作方法用途File(Stringpathname)用給定路徑名字符串創(chuàng)建一個新File實例File(Stringparent,Stringchild)根據(jù)parent父路徑名字符串和子child路徑名字符串,創(chuàng)建一個新File實例File(Fileparent,Stringchild)根據(jù)parent父File類和child子路徑名字符串,創(chuàng)建一個新File實例File(URIuri)用給定的file:URI創(chuàng)建一個新的File實例6.1.4知識總結(jié)2.File類的使用(3)File類的常用常量字段名稱字段說明publicstaticfinalStringseparator與系統(tǒng)有關(guān)的默認名稱分隔符。此字段被初始化為包含系統(tǒng)屬性file.separator的值的第一個字符。在UNIX系統(tǒng)上,此字段的值為“/”;在MicrosoftWindows系統(tǒng)上,它為“\\”publicstaticfinalStringpathSeparator與系統(tǒng)有關(guān)的默認路徑分隔符字符。此字段被初始化為包含系統(tǒng)屬性path.separator的值的第一個字符。此字符用于按照路徑列表給出的文件順序分隔文件名。在UNIX系統(tǒng)上,此字段為“:”;在MicrosoftWindows系統(tǒng)上,它為“;”6.1.4知識總結(jié)3.RandomAccessFile類的使用RanddomAccessFile的構(gòu)造方法:publicRanddomAccessFile(Filefile,Stringmode)throwsFileNotFoundException(1)使用RandomAccessFile進行寫入操作利用隨機訪問提供的直接寫入方法,向文件中直接輸出一個基本數(shù)據(jù)類型數(shù)據(jù)。(2)使用RandomAccessFile進行讀取操作在RandomAccessFile操作的時候,讀取的方法都是從DataInput接口實現(xiàn)而來的,提供了一系列的直接從輸入流中讀取相應(yīng)類型數(shù)據(jù)的方法。6.1.5應(yīng)用實踐在指定磁盤上創(chuàng)建一個文件java\file\myDocument.txt,當文件的路徑不存在時,要求程序能為其建立包括父目錄在內(nèi)的完整路徑。然后用RandomAccessFile類實現(xiàn)對創(chuàng)建文件的寫入和隨機讀取操作。任務(wù)6.2流操作文件4情境描述123問題分析解決方案知識總結(jié)5應(yīng)用實踐6.2.1情境描述Tom設(shè)計的工資管理系統(tǒng)下的員工信息,利用流的方式實現(xiàn)文件的讀取及寫入操作,需要完成以下任務(wù):1)利用字符流創(chuàng)建數(shù)據(jù)寫入方法。2)利用字節(jié)流創(chuàng)建數(shù)據(jù)讀取方法。6.2.2問題分析通過RandomAccessFile類能夠?qū)崿F(xiàn)文件的存儲操作,然而,在文件操作的時候存在一定的缺陷,Java提供InputStream和OutputStream類,便于文件輸入輸出操作。6.2.3解決方案
1、打開Eclipse。2、在com.esms.file包下創(chuàng)建流文件操作類FileStreamHelper.java類。實現(xiàn)文件的流模式讀取及寫入操作。3、創(chuàng)建員工文件持久操作EmployeeAFile類,實現(xiàn)A類員工的添加、修改、刪除及查詢功能。4、在員工管理界面EmployeeAConsole類中調(diào)用實現(xiàn)員工信息持久類。5、運行測試數(shù)據(jù)持久。6.2.4知識總結(jié)1.流的概念所謂流(stream),是指有序的數(shù)據(jù)序列,它有一個來源(輸入流)或者目的地(輸出流)。我們往往可以從兩個角度對流進行劃分:從流的功能性角度來看,一個可以讀取數(shù)據(jù)的對象被稱為輸入流,一個可以寫入數(shù)據(jù)的對象被稱為輸出流;而從數(shù)據(jù)的組織方法來看,如果一個流的數(shù)據(jù)組織單位為字節(jié),則稱為字節(jié)流(二進制流),若是數(shù)據(jù)的組織單位為字符,則稱為字符流(文本流)。6.2.4知識總結(jié)2.字節(jié)流java.io包中定義了進行二進制字節(jié)流的輸入輸出抽象類InputStream和OutputStream。這兩個抽象類的擴展又提供了很多實用的字節(jié)流子類。6.2.4知識總結(jié)2.字節(jié)流(1)InputStream類:java.io.InputStream,此抽象類是表示字節(jié)輸入流的所有類的超類,它聲明了從特定資源讀取字節(jié)的方法。InputStreamSequenceInputStreamPipedInputStreamFilterInputStreamFileInputStreamByteArrayInputStreamInputStreamStringBufferInputStreamAudioInputStreamObjectInputStreamPushbackInputStreamBufferedInputStreamDataInputStream6.2.4知識總結(jié)2.字節(jié)流(2)OutputStream類:作為其他字節(jié)輸出流類的基類OutputStream,也有類似的層次派生結(jié)構(gòu)類。OutputStreamOutputStreamPipedOutputStreamFilterOutputStreamFileOutputStreamByteArrayOutputStreamObjectOutputStreamPrintStreamBufferedOutputStreamDataOutputStream6.2.4知識總結(jié)3.字符流Java.io包中定義的用于字符流輸入輸出的抽象類是Reader和Writer。這些抽象類的擴展又提供了很多實用的字符流子類。Reader類層次結(jié)構(gòu)ReaderPipedReaderBufferedReaderFilteredReaderStringReaderCharArrayReaderInputStreamReaderLineNumberReaderPushbackReaderFileReader6.2.4知識總結(jié)3.字符流Java.io包中定義的用于字符流輸入輸出的抽象類是Reader和Writer。這些抽象類的擴展又提供了很多實用的字符流子類。Writer類層次結(jié)構(gòu)WriterPipedWriterBufferedWriterFilteredWriterStringWriterCharArrayWriterOutputStreamWriterFileWriterPrintWriter6.2.5應(yīng)用實踐用Java開發(fā)一個應(yīng)用程序,由它來完成文件的復(fù)制,它不僅可以復(fù)制單個的文件,還可以對文件夾中全部內(nèi)容進行復(fù)制。使用I/O操作實現(xiàn)一個文件的拷貝功能,類似DOS操作的copy命令。任務(wù)6.3對象的存儲4情境描述123問題分析解決方案知識總結(jié)5應(yīng)用實踐6.3.1情境描述經(jīng)過前面的操作后,員工對象是以文本文件存儲到文件中,而在面向?qū)ο蟮某绦蛟O(shè)計中,員工的信息往往以對象的形式存在。為了簡化數(shù)據(jù)儲存格式轉(zhuǎn)換的難度,需要完成以下任務(wù):1)利用對象流實現(xiàn)內(nèi)存對象直接寫入到文件中。2)利用對象流實現(xiàn)硬盤文件讀取到內(nèi)存中。6.3.2問題分析在Java語言中,任務(wù)6.2的方法卻面臨存儲格式的轉(zhuǎn)換問題。Java語言提供對象ObjectInputStream及ObjectOutputStream解決此類問題,在實現(xiàn)對象存儲的時候需要注意,Java的對象需要進行序列化才能實現(xiàn)持久。6.3.3解決方案1、打開Eclipse。2、在com.esms.File下建立對象流ObjectStreamHelper類,實現(xiàn)對象流的寫入和讀取操作。3、在ObjectStreamHelper類下添加write方法。4、在ObjectStreamHelper類下添加read方法,讀取對象。5、編寫B(tài)類員工數(shù)據(jù)持久操作類EmployeeBFile.java。6、修改EmployeeB類,添加對象序列化。7、修改EmployeeBConsole,實現(xiàn)對象持久。6.3.4知識總結(jié)1.標準流Java平臺提供了標準流實現(xiàn)命令行交互的方式。Java平臺支持3種標準流:①標準輸入,對象是鍵盤,通過System.in訪問;②標準輸出stdout,對象是屏幕,通過System.out訪問;③標準錯誤輸出stderr,對象也是屏幕,通過System.err訪問。6.3.4知識總結(jié)2.格式化輸入Java語言中,格式化輸入是通過類java.util.Scanner來完成的。Scanner類的主要是從鍵盤或文件等讀取基本數(shù)據(jù)類型和讀取一行字符信息。主要方法如下:nextLine():讀入一行字符串。nextInt():讀入下一個整數(shù)。nextFloat、nextDouble:將輸入信息按浮點數(shù)讀取。hasNext():測試輸入流中是否還有數(shù)據(jù)。3.格式化輸出printf方法的基本形式是:printf(格式說明符,對象列表)6.3.4知識總結(jié)4.對象序列化如果要想完成對象的序列化,則還要依靠ObjectOutputStream類和ObjectInputStream類,前者屬于序列化操作,
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 二零二五年度房屋置換與家居定制服務(wù)合同范本3篇
- 二零二五年度校園雕塑作品采購合同范本3篇
- 2025年度環(huán)境監(jiān)控系統(tǒng)工程合同2篇
- 海南職業(yè)技術(shù)學(xué)院《文獻檢索》2023-2024學(xué)年第一學(xué)期期末試卷
- 襄陽汽車課程設(shè)計招聘
- 海南師范大學(xué)《物流信息技術(shù)》2023-2024學(xué)年第一學(xué)期期末試卷
- 二零二五年度名校學(xué)區(qū)二手房買賣合同范本2篇
- 二零二五年度國際貿(mào)易實務(wù):磋商與訂立合同實務(wù)操作與法律風(fēng)險防范手冊9篇
- 二零二五年度海寧房產(chǎn)買賣糾紛調(diào)解及法律援助合同3篇
- 2025年度房地產(chǎn)項目銷售代理合同3篇
- 閱讀理解(專項訓(xùn)練)-2024-2025學(xué)年湘少版英語六年級上冊
- 民用無人駕駛航空器產(chǎn)品標識要求
- 2024年醫(yī)院產(chǎn)科工作計劃例文(4篇)
- 2024-2025學(xué)年九年級英語上學(xué)期期末真題復(fù)習(xí) 專題09 單詞拼寫(安徽專用)
- 無創(chuàng)通氣基本模式
- 江西省贛州市尋烏縣2023-2024學(xué)年八年級上學(xué)期期末檢測數(shù)學(xué)試卷(含解析)
- 《臨床放射生物學(xué)》課件
- 腸造口還納術(shù)手術(shù)配合
- 2024年中考語文試題分類匯編:詩詞鑒賞(學(xué)生版)
- 科學(xué)計算語言Julia及MWORKS實踐 課件 3-MWORKS簡介
- 2024年10月自考04532財務(wù)會計專題試題及答案含解析
評論
0/150
提交評論