




版權(quán)說(shuō)明:本文檔由用戶(hù)提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、PAGE 課程設(shè)計(jì)報(bào)告(本科)課程:JAVA課程設(shè)計(jì)學(xué)號(hào):1310211姓名:衛(wèi)曉燕班級(jí):計(jì)算機(jī)科學(xué)與技術(shù)教師:凡時(shí)間:20140601計(jì)算機(jī)科學(xué)與技術(shù)系PAGE 9設(shè)計(jì)名稱(chēng):名稱(chēng):文本文檔的加密與解密設(shè)計(jì)內(nèi)容、目的與要求:設(shè)計(jì)內(nèi)容:圖形化界面編程,編寫(xiě)一個(gè)加密與解密程序目的與要求:(1)采用圖形用戶(hù)界面;(2)給定任意一個(gè)文本文件,進(jìn)行加密,生成另一個(gè)文件;(3)對(duì)加密后的文件還原計(jì)劃與進(jìn)度安排:計(jì)劃與進(jìn)度:一:需求分析二:總體設(shè)計(jì)2.1包的描述2.2類(lèi)的描述三:頁(yè)面設(shè)計(jì)與分析四:設(shè)計(jì)體會(huì)與建議設(shè)計(jì)過(guò)程、步驟(可加頁(yè)):一需求分析 (1)給定任意一個(gè)文本文件,進(jìn)行加密,生成另一個(gè)文件。 (2
2、)對(duì)加密后的文件還原。 二總體設(shè)計(jì) 2.1 包的描述 導(dǎo)入了java.awt; java.awt.event; java.io; javax.swing等包。 2.2 類(lèi)的描述 Myframe類(lèi);E1類(lèi)。其中Myframe類(lèi)繼承Frame類(lèi);可以擴(kuò)展Frame的功能并且可以實(shí)例化的多種功能,這個(gè)類(lèi)也實(shí)現(xiàn)了ActionListener這個(gè)接口,它是Java中關(guān)于事件處理的一個(gè)接口,ActionListener用于接收操作事件的偵聽(tīng)器接口。對(duì)處理操作事件感興趣的類(lèi)可以實(shí)現(xiàn)此接口,而使用該類(lèi)創(chuàng)建的對(duì)象可使用組件的 addActionListener 方法向該組件注冊(cè)。在發(fā)生操作事件時(shí),調(diào)用該對(duì)象的
3、actionPerformed 方法。結(jié)果與分析(可以加頁(yè)): 三:頁(yè)面設(shè)計(jì)與分析 圖3.1 顯示頁(yè)面代碼實(shí)現(xiàn): addWindowListener(new WindowAdapter() public void windowClosing(WindowEvent e) System.exit(0); ); 圖3.2 選擇所要加密的文件代碼實(shí)現(xiàn):public void actionPerformed(ActionEvent e) /查找讀入文件if(e.getSource()=itemOpen)filedialog_load.setVisible(true);texta.setText(nul
4、l);String s;if(filedialog_load.getFile()!=null)tryFile file=new File(filedialog_load.getDirectory(),filedialog_load.getFile();FileReader file_reader=new FileReader(file);/讀取字符流BufferedReader in=new BufferedReader(file_reader);while(s=in.readLine()!=null)texta.append(s+n);in.close();file_reader.close
5、();catch (IOException e1) 圖3.3 加密后的文件代碼實(shí)現(xiàn): if(e.getSource()=button1)char a=texta.getText().toCharArray(); /把texta中獲得的文本,進(jìn)行初始化,與原字符串長(zhǎng)度相等,并將該字符串對(duì)象的全部字符復(fù)制到該數(shù)組a中*/texta.setText(null);int n;char secret= ;for(int i=0;ia.length;i+)char c=(char)(secretai);/進(jìn)行異或運(yùn)算texta.append(+c); 圖3.4 解密后的文件代碼實(shí)現(xiàn): if(e.getSo
6、urce()=button2)char a=texta.getText().toCharArray();texta.setText(null);int n;char secret= ;for(int i=0;ia.length;i+)char c=(char)(secretai);/再次異或運(yùn)算,即還原texta.append(+c);總體程序代碼見(jiàn)附錄部分設(shè)計(jì)體會(huì)與建議: 設(shè)計(jì)體會(huì): 在本次課程設(shè)計(jì)的過(guò)程中,我學(xué)到了很多,不僅對(duì)所學(xué)的知識(shí)有一個(gè)新的認(rèn)識(shí),認(rèn)識(shí)到要做一個(gè)課程設(shè)計(jì)不僅需要我們有一種很?chē)?yán)謹(jǐn)?shù)膽B(tài)度和扎實(shí)的知識(shí)作為基礎(chǔ)和后盾的,還要將理論知識(shí)與實(shí)際課題相結(jié)合起來(lái),不僅培養(yǎng)了獨(dú)立思考、動(dòng)
7、手操作的能力,在各種其它能力上也都有了提高。通過(guò)此次課程設(shè)計(jì),將本學(xué)期所學(xué)的JAVA知識(shí)得到鞏固和應(yīng)用,在設(shè)計(jì)的過(guò)程中我遇到了很到問(wèn)題,不過(guò)通過(guò)上網(wǎng)查找資料和在我們同組成員的努力配合嘗試下,還是很好的完成了。這次課程設(shè)計(jì)還讓我懂得了寫(xiě)程序不能閉門(mén)造車(chē),要努力拓寬知識(shí)面,開(kāi)闊視野,拓展思維。它還讓我學(xué)會(huì)了在網(wǎng)上查閱那些無(wú)限的資源。在以后的生活中不管做什么事都需要有一顆堅(jiān)持不懈的心,在遇到困難時(shí)要有毫不氣餒迎難而上的勇氣,要腳踏實(shí)地一步一步的做下去,不能急于求成。附錄:一:程序代碼二:參考文獻(xiàn)程序代碼:package jm;import java.awt.*;import java.awt.eve
8、nt.*;import java.io.*;import javax.swing.*;class Myframe extends Frame implements ActionListener FileDialog filedialog_save,filedialog_load;Button button1,button2;Label label;MenuBar bar;Menu menu;MenuItem itemOpen,itemSave;TextArea texta;Myframe(String s) /創(chuàng)建對(duì)話框super(s); texta= new TextArea(38,160)
9、;button1= new Button(加密);button2= new Button(解密);menu=new Menu(文件);itemOpen=new MenuItem(打開(kāi));itemSave=new MenuItem(保存);label=new Label(文件瀏覽窗口);itemOpen.addActionListener(this);itemSave.addActionListener(this);button1.addActionListener(this);button2.addActionListener(this);filedialog_save=new FileDia
10、log(this,保存文件對(duì)話框,FileDialog.SAVE);filedialog_load=new FileDialog(this,打開(kāi)文件對(duì)話框,FileDialog.LOAD);filedialog_save.addWindowListener(new WindowAdapter()public void windowClosing(WindowEvent e)filedialog_save.setVisible(false););filedialog_load.addWindowListener(new WindowAdapter()public void windowClosi
11、ng(WindowEvent e)filedialog_load.setVisible(false););Box box1=Box.createHorizontalBox(); /創(chuàng)建一個(gè)從左到右顯示其組件的 box1;Box box2=Box.createVerticalBox(); /創(chuàng)建一個(gè)從上到下顯示其組件的 box2; Box box3=Box.createVerticalBox();Box boxbase=Box.createVerticalBox();Panel panel1=new Panel();Panel panel2=new Panel();setMenuBar(bar=
12、new MenuBar();bar.add(menu);menu.add(itemOpen); menu.add(itemSave);panel1.add(button1);panel1.add(button2);box1.add(panel1);box2.add(label);panel2.add(texta);box3.add(panel2);boxbase.add(box1);boxbase.add(box2);boxbase.add(box3);add(boxbase);setLayout(new FlowLayout();setBounds(100,0,1200,750);setVi
13、sible(true); addWindowListener(new WindowAdapter() public void windowClosing(WindowEvent e) System.exit(0); ); /“關(guān)閉”窗口事件;public void actionPerformed(ActionEvent e) /查找讀入文件if(e.getSource()=itemOpen)filedialog_load.setVisible(true);texta.setText(null);String s;if(filedialog_load.getFile()!=null)tryFil
14、e file=new File(filedialog_load.getDirectory(),filedialog_load.getFile();FileReader file_reader=new FileReader(file);/讀取字符流BufferedReader in=new BufferedReader(file_reader);while(s=in.readLine()!=null)texta.append(s+n);in.close();file_reader.close();catch (IOException e1)if(e.getSource()=itemSave) /
15、查找寫(xiě)入的文件filedialog_save.setVisible(true);if(filedialog_save.getFile()!=null)tryFile file=new File(filedialog_save.getDirectory(),filedialog_save.getFile();FileWriter tofile=new FileWriter(file); /讀取字符流BufferedWriter out=new BufferedWriter(tofile);out.write(texta.getText(),0,(texta.getText().length();
16、out.close();tofile.close();catch (IOException e2)if(e.getSource()=button1)char a=texta.getText().toCharArray(); /把texta中獲得的文本,進(jìn)行初始化,與原字符串長(zhǎng)度相等,并將該字符串對(duì)象的全部字符復(fù)制到該數(shù)組a中texta.setText(null);int n;char secret= ;for(int i=0;ia.length;i+)char c=(char)(secretai); /進(jìn)行異或運(yùn)算texta.append(+c);if(e.getSource()=button2)char a=texta.getText().toCharArray();texta.setText(null);int n;char secret= ;for(int i=0;ia.l
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶(hù)所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶(hù)上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶(hù)上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶(hù)因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025-2030年中國(guó)閥門(mén)鑄件市場(chǎng)運(yùn)行狀況及前景趨勢(shì)分析報(bào)告
- 2025-2030年中國(guó)鐵路設(shè)備行業(yè)發(fā)展?fàn)顩r及營(yíng)銷(xiāo)戰(zhàn)略研究報(bào)告
- 2025-2030年中國(guó)調(diào)節(jié)閥產(chǎn)業(yè)運(yùn)行態(tài)勢(shì)及發(fā)展前景分析報(bào)告
- 2025-2030年中國(guó)蘋(píng)果汁市場(chǎng)發(fā)展規(guī)模及前景預(yù)測(cè)分析報(bào)告
- 中如何制作電子印章
- 2025-2030年中國(guó)福建燃?xì)馐袌?chǎng)運(yùn)行狀況與前景趨勢(shì)分析報(bào)告
- 新疆工業(yè)職業(yè)技術(shù)學(xué)院《酒店服務(wù)技能實(shí)訓(xùn)》2023-2024學(xué)年第二學(xué)期期末試卷
- 齊齊哈爾工程學(xué)院《空竹》2023-2024學(xué)年第二學(xué)期期末試卷
- 廣東技術(shù)師范大學(xué)《文字與版式設(shè)計(jì)》2023-2024學(xué)年第二學(xué)期期末試卷
- 吉林師范大學(xué)《城市公用事業(yè)管理理論與實(shí)踐》2023-2024學(xué)年第二學(xué)期期末試卷
- 魯迅吶喊讀書(shū)分享名著導(dǎo)讀
- 第1.1課-七律二首-送瘟神-【中職專(zhuān)用】高二語(yǔ)文同步備課課件(高教版2023職業(yè)模塊)
- (滬教牛津版)深圳市小學(xué)1-6年級(jí)英語(yǔ)單詞默寫(xiě)表(英文+中文+默寫(xiě))
- 初中語(yǔ)文跨學(xué)科資源融合教學(xué)研究
- 慢病管理課件-高血壓、糖尿病等慢性病的護(hù)理和管理
- 春秋季六年級(jí)奧數(shù)培訓(xùn)教材全0
- 【實(shí)用資料】食物中毒現(xiàn)場(chǎng)衛(wèi)生學(xué)采樣PPT
- 抗原 抗原(免疫學(xué)檢驗(yàn)課件)
- 《撰寫(xiě)演講稿》-省賽一等獎(jiǎng)-完整版課件
- 運(yùn)輸車(chē)輛衛(wèi)生安全檢查記錄表
- 民航概論P(yáng)PT全套教學(xué)課件
評(píng)論
0/150
提交評(píng)論