歡迎來到裝配圖網(wǎng)! | 幫助中心 裝配圖網(wǎng)zhuangpeitu.com!
裝配圖網(wǎng)
ImageVerifierCode 換一換
首頁 裝配圖網(wǎng) > 資源分類 > PPT文檔下載  

Java輸入輸出和網(wǎng)絡(luò)編程.ppt

  • 資源ID:11496821       資源大?。?span id="rus7bz3" class="font-tahoma">413.50KB        全文頁數(shù):72頁
  • 資源格式: PPT        下載積分:14.9積分
快捷下載 游客一鍵下載
會員登錄下載
微信登錄下載
三方登錄下載: 微信開放平臺登錄 支付寶登錄   QQ登錄   微博登錄  
二維碼
微信掃一掃登錄
下載資源需要14.9積分
郵箱/手機:
溫馨提示:
用戶名和密碼都是您填寫的郵箱或者手機號,方便查詢和重復(fù)下載(系統(tǒng)自動生成)
支付方式: 支付寶    微信支付   
驗證碼:   換一換

 
賬號:
密碼:
驗證碼:   換一換
  忘記密碼?
    
友情提示
2、PDF文件下載后,可能會被瀏覽器默認打開,此種情況可以點擊瀏覽器菜單,保存網(wǎng)頁到桌面,就可以正常下載了。
3、本站不支持迅雷下載,請使用電腦自帶的IE瀏覽器,或者360瀏覽器、谷歌瀏覽器下載即可。
4、本站資源下載后的文檔和圖紙-無水印,預(yù)覽文檔經(jīng)過壓縮,下載后原文更清晰。
5、試題試卷類文檔,如果標(biāo)題沒有明確說明有答案則都視為沒有答案,請知曉。

Java輸入輸出和網(wǎng)絡(luò)編程.ppt

第5章Java輸入輸出和網(wǎng)絡(luò)編程,【學(xué)習(xí)目標(biāo)】1了解Java輸入/輸出流的概念,了解Java中對字節(jié)流和字符流的不同處理。,熟悉各種流類的使用,包括如何讀寫字節(jié)文件,如何增加緩沖和讀寫基本數(shù)據(jù)類型,如何通過管道讀寫數(shù)據(jù),如何讀寫類對象等。,熟悉Java中文件和文件處理以及文件的隨機訪問流等。掌握字符文件的讀寫。理解緩沖和通道的概念并熟悉其使用。,2了解Java網(wǎng)絡(luò)編程的基本概念。重點掌握Socket通信編程,包括服務(wù)器端Socket和客戶端Socket的建立,讀寫Socket數(shù)據(jù)流的建立,數(shù)據(jù)的讀寫過程和多線程處理等。,5.1Java輸入/輸出流,5.1.1概述1流的概念(Stream)Java中把這些不同來源和目標(biāo)的數(shù)據(jù)都統(tǒng)一抽象為流(Stream),它是同一臺計算機中或網(wǎng)絡(luò)上不同計算機之間有序運動的數(shù)據(jù)序列。,(a)(b)圖5-1輸入流和輸出流的過程圖,2java.io包,圖5-2java.io包中字節(jié)流父類、字符流父類和文件處理類,InputStream類是所有字節(jié)輸入流的父類Reader類是所有字符輸入流的父類File類是專門用來處理文件的類。RandomAcessFile類實現(xiàn)了文件的隨機讀寫。,(a)(b)圖5-3輸入流和輸出流的過程圖,3java.nio包和java.nio.channels包,5.1.2字節(jié)文件輸入/輸出流字節(jié)文件輸入流FileInputStream是InputStream類的子類,重寫了父類的read方法,用來打開文件并以字節(jié)的方式從文件讀取數(shù)據(jù)。,1字節(jié)文件輸入流(FileInputStream)使用下面的構(gòu)造方法創(chuàng)建文件輸入流對象。,publicFileInputStream(Stringname)throwsFileNotFoundException。參數(shù)是包含目錄和文件名的字符串。publicFileInputStream(Filefile)throwsFileNotFoundException。,使用下面的read方法從輸入流中讀取字節(jié)數(shù)據(jù),讀到流的末尾返回1,標(biāo)志著流的結(jié)束。,publicintread()throwsIOException。publicintread(byteb)throwsIOException。publicintread(byteb,intoff,intlen)throwsIOException。,關(guān)閉流。publicvoidclose()throwsIOException用來關(guān)閉流。,2字節(jié)文件輸出流(FileOutputStream)使用下面的構(gòu)造方法創(chuàng)建文件輸出流對象。,publicFileOutputStream(Stringname)throwsFileNotFoundException。publicFileOutputStream(Filefile)throwsIOException。publicFileOutputStream(Stringname,booleanappend)throwsFileNotFoundException。,使用下面的write方法向文件中寫入數(shù)據(jù)。publicvoidwrite(intb)throwsIOException。publicvoidwrite(byteb)throwsIOException。publicvoidwrite(byteb,intoff,intlen)throwsIOException。,關(guān)閉流。publicvoidclose()throwsIOException用來關(guān)閉流。,5.1.3增加緩沖和讀/寫基本數(shù)據(jù)類型1緩沖字節(jié)流(BufferedInputStream和BufferedOutputStream),使用以下構(gòu)造方法創(chuàng)建緩沖輸入流對象。publicBufferedInputStream(InputStreamin)。publicBufferedInputStream(InputStreamin,intsize)。,使用以下構(gòu)造方法創(chuàng)建緩沖輸出流對象。publicBufferedOutputStream(OutputStreamout)。publicBufferedOutputStream(OutputStreamout,intsize)。,2數(shù)據(jù)流(DataInputStream和DataOutputStream)使用以下構(gòu)造方法創(chuàng)建數(shù)據(jù)輸入流對象和數(shù)據(jù)輸出流對象。,publicDataInputStream(InputStreamin),創(chuàng)建數(shù)據(jù)輸入流。publicDataOutputStream(OutputStreamout),創(chuàng)建數(shù)據(jù)輸出流。,常用方法。DataInputStream類讀數(shù)據(jù)的方法包括readBoolean()、readChar()、readInt()、readDouble()等。,DataOutputStream類寫數(shù)據(jù)的方法包括writeBoolean(booleanv)、writeChar(intv)、writeInt(intv)、writeDouble(doublev)等。因見名知義,這里沒有列出所有方法,可查閱JavaAPI文檔。,3打印輸出到文件,5.1.4通過管道讀/寫數(shù)據(jù)java.io包中提供了兩個實現(xiàn)管道通信的類:管道輸出流PipedOutputStream類和管道輸入流PipedInputStream類。,5.1.5類對象的讀/寫類ObjectOutputStream可將類對象寫入OutputStream,以便保存在文件中或在網(wǎng)絡(luò)上傳輸。,1對象輸出流(ObjectOutputStream)和寫對象publicObjectOutputStream(OutputStreamout)throwsIOException。publicfinalvoidwriteObject(Objectobj)throwsIOException。,2對象輸入流(ObjectInputStream)和讀對象publicObjectInputStream(InputStreamin)throwsIOException。,publicfinalObjectreadObject()throwsOptionalDataException,ClassNotFoundException,IOException。,5.1.6文件類(File)1創(chuàng)建File對象常用File類的以下構(gòu)造方法創(chuàng)建File對象。,publicFile(Stringpathname),參數(shù)pathname是包含目錄和文件名的字符串。Java把目錄看作一種特殊的文件,因此該字符串可以沒有文件名。,publicFile(Fileparent,Stringchild)。publicFile(Stringparent,Stringchild)。,2獲取文件信息和操作文件,5.1.7文件的隨機訪問(RandomAccessFile)1創(chuàng)建RandomAccessFile類對象使用下面的兩個構(gòu)造方法可以創(chuàng)建RandomAccessFile類對象。,publicRandomAccessFile(Filefile,Stringmode)throwsIOException。publicRandomAccessFile(Stringname,Stringmode)throwsFileNotFoundException。,2控制讀寫指針publicintskipBytes(intn)throwsIOException,將文件讀寫指針向后移動n個字節(jié)。,publicvoidseek(longpos)throwsIOException,把指針移到指定位置pos。publiclonggetFilePointer()throwsIOException,得到讀寫指針當(dāng)前的位置。,3讀寫數(shù)據(jù),5.1.8字符文件的讀、寫,1讀字符文件(FileReader)2寫字符文件(FileWriter)3緩沖字符輸入流(BufferedReader)4緩沖字符輸出流(BufferedWriter),5.1.9緩沖和通道的使用1字節(jié)緩沖區(qū)類(ByteBuffer)容量表示該緩沖區(qū)可以保存多少數(shù)據(jù),使用類中的靜態(tài)方法allocate(intcapacity)可以創(chuàng)建指定容量的緩沖區(qū),其容量永遠不會為負并且從不會更改。,極限用來指明不能對超過該值的緩沖區(qū)數(shù)據(jù)項進行操作,它是個非負整數(shù),不能大于緩沖區(qū)的容量值。位置是指下一個要讀取或?qū)懭氲脑氐乃饕?。?biāo)記與前面講過的類似,用mark()做標(biāo)記,用reset()重新回到標(biāo)記位置。,2文件通道(FileChannel),5.2Java網(wǎng)絡(luò)編程,5.2.1概述1InetAddress類Java網(wǎng)絡(luò)包中的InetAddress類是Java中的IP地址封裝類,常用下面的方法獲取IP地址。,publicstaticInetAddressgetByName(Stringhost)throwsUnknownHostException。publicStringgetHostAddress()。,2服務(wù)器和客戶機3端口號,5.2.2Socket通信1Socket通信簡介在分布處理過程中,客戶機/服務(wù)器的Socket通信,也稱為套接字通信,是基于Socket連接的網(wǎng)絡(luò)通信模式。,圖5-5基于連接的網(wǎng)絡(luò)通信模式,2Socket類使用以下構(gòu)造方法創(chuàng)建連接到指定服務(wù)器的客戶端套接字(Socket類)對象。,publicSocket(Stringhost,intport)throwsunknownHostException,IOException。publicSocket(InetAddresshost,intport)throwsIOException。,使用Socket類的以下方法從套接字中讀取數(shù)據(jù)和向套接字中寫入數(shù)據(jù)。publicInputStreamgetInputStream()throwsIOException。publicOutputStreamgetOutputStream()throwsIOException。,3ServerSocket類使用以下構(gòu)造方法創(chuàng)建.ServerSocket類對象。,publicServerSocket(intport)throwsIOException。publicServerSocket(intport,intbacklog)throwsIOException。,使用ServerSocket類的方法accept()打開Socket,然后可以從套接字中讀取數(shù)據(jù)或向套接字中寫入數(shù)據(jù)。,5.2.3UDP數(shù)據(jù)報通信1UDP數(shù)據(jù)報通信簡介2DatagramSocket類使用以下構(gòu)造方法創(chuàng)建收、發(fā)數(shù)據(jù)報的Socket對象。,publicDatagramSocket()throwsSocketException,自動指定一個可用的端口號。publicDatagramSocket(intport)throwsSocketException,參數(shù)port指定端口號。,發(fā)送數(shù)據(jù)報和接收數(shù)據(jù)報。publicvoidsend(DatagramPacketp)throwsIOException,發(fā)送數(shù)據(jù)報。publicvoidreceive(DatagramPacketp)throwsIOException,接收數(shù)據(jù)報。,3DatagramPacket類使用下面的構(gòu)造方法創(chuàng)建DatagramPacket類對象作為數(shù)據(jù)的載體。,publicDatagramPacket(bytebuf,intlength)publicDatagramPacket(bytebuf,intlength,InetAddressaddress,intport),下面是DatagramPacket類的常用方法。publicInetAddressgetAddress(),得到存放在數(shù)據(jù)報中的IP地址。,publicintgetPort(),得到存放在數(shù)據(jù)報中的端口號。publicbytegetData(),得到存放在數(shù)據(jù)報中的數(shù)據(jù)。,publicintgetLength(),得到數(shù)據(jù)報中的數(shù)據(jù)長度。publicvoidsetData(bytebuf),設(shè)置數(shù)據(jù)報中的數(shù)據(jù)內(nèi)容。,5.2.4使用Socket通信實現(xiàn)簡單聊天室1聊天室圖形界面類(ChatPanel),圖5-6例5.13程序ChatPanel的運行效果,2聊天室服務(wù)器端(ChatServer類)3聊天室客戶端(ChatClient類),

注意事項

本文(Java輸入輸出和網(wǎng)絡(luò)編程.ppt)為本站會員(tia****nde)主動上傳,裝配圖網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對上載內(nèi)容本身不做任何修改或編輯。 若此文所含內(nèi)容侵犯了您的版權(quán)或隱私,請立即通知裝配圖網(wǎng)(點擊聯(lián)系客服),我們立即給予刪除!

溫馨提示:如果因為網(wǎng)速或其他原因下載失敗請重新下載,重復(fù)下載不扣分。




關(guān)于我們 - 網(wǎng)站聲明 - 網(wǎng)站地圖 - 資源地圖 - 友情鏈接 - 網(wǎng)站客服 - 聯(lián)系我們

copyright@ 2023-2025  zhuangpeitu.com 裝配圖網(wǎng)版權(quán)所有   聯(lián)系電話:18123376007

備案號:ICP2024067431-1 川公網(wǎng)安備51140202000466號


本站為文檔C2C交易模式,即用戶上傳的文檔直接被用戶下載,本站只是中間服務(wù)平臺,本站所有文檔下載所得的收益歸上傳人(含作者)所有。裝配圖網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對上載內(nèi)容本身不做任何修改或編輯。若文檔所含內(nèi)容侵犯了您的版權(quán)或隱私,請立即通知裝配圖網(wǎng),我們立即給予刪除!