數(shù)據(jù)結(jié)構(gòu)實(shí)訓(xùn)報(bào)告_第1頁
數(shù)據(jù)結(jié)構(gòu)實(shí)訓(xùn)報(bào)告_第2頁
數(shù)據(jù)結(jié)構(gòu)實(shí)訓(xùn)報(bào)告_第3頁
數(shù)據(jù)結(jié)構(gòu)實(shí)訓(xùn)報(bào)告_第4頁
數(shù)據(jù)結(jié)構(gòu)實(shí)訓(xùn)報(bào)告_第5頁
已閱讀5頁,還剩7頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡介

《數(shù)據(jù)構(gòu)造與算法分析》課程設(shè)計(jì)題目:文字解決程序(字符串的應(yīng)用)學(xué)生姓名:林武祥學(xué)號:專業(yè)班級:B16軟件工程1班指導(dǎo)教師:顏慧:大數(shù)據(jù)與計(jì)算機(jī)學(xué)院12月目錄一、課程設(shè)計(jì)題目二、開發(fā)背景 三、項(xiàng)目總體設(shè)計(jì)3.1需求分析 3.2系統(tǒng)功能模塊設(shè)計(jì) 四、詳細(xì)實(shí)現(xiàn)步驟和流程圖 4.1功能實(shí)現(xiàn)展示 4.2流程圖框架 4五、部分具體代碼分析及實(shí)現(xiàn)六、項(xiàng)目總結(jié)七、參考文獻(xiàn) 9課程設(shè)計(jì)題目文字解決程序(字符串的應(yīng)用)及簡樸文本編輯器二、開發(fā)背景由于對于現(xiàn)在的電腦族對電腦的使用頻率逐年增大,對電腦的需要含有依賴性。其中不乏有對文本的編輯的需求,因此,本次實(shí)訓(xùn)周做了一款簡樸的文本編輯器的應(yīng)用程序,對文本編輯器的有關(guān)功效做了一定的實(shí)現(xiàn),既簡樸又實(shí)用。本軟件為一種簡樸并且很實(shí)用的文本編輯的工具,不僅能夠進(jìn)行某些文字的輸入和文本的讀取,并且,該文本編輯器也能夠?qū)ξ谋具M(jìn)行某些保存、另存、剪切、粘貼、刪除等常規(guī)的操作,是一款比較適合廣大普通顧客和非計(jì)算機(jī)專業(yè)的顧客和文本編輯的解決軟件,本軟件不僅界面和諧,功效齊全,并且操作簡樸。三、項(xiàng)目總體設(shè)計(jì)3.1需求分析文字解決程序運(yùn)行后彈出文本編輯器的主界面,由鍵盤輸入或以打開的方式輸入或顯示文本文獻(xiàn)內(nèi)容。其中程序基本操作:涉及文本的復(fù)制、粘貼、剪切、刪除、查找、替代等功效。統(tǒng)計(jì)功效:分別統(tǒng)計(jì)出文本文獻(xiàn)中的各類字符的個(gè)數(shù),涉及英文字母個(gè)數(shù)、空格個(gè)數(shù)、中文個(gè)數(shù)、標(biāo)點(diǎn)符號個(gè)數(shù)、總字?jǐn)?shù)等并顯示統(tǒng)計(jì)信息;允許顧客統(tǒng)計(jì)某一字符串在文章中出現(xiàn)的次數(shù),并顯示統(tǒng)計(jì)信息;加密和解密:顧客可對指定文本文獻(xiàn)進(jìn)行加密和解密操作;顧客可保存該文獻(xiàn)。3.2系統(tǒng)功效模塊設(shè)計(jì)具體實(shí)現(xiàn)環(huán)節(jié)和流程圖4.1功效實(shí)現(xiàn)展示運(yùn)行主界面打開文獻(xiàn)夾輸入字體界面另存為加密保存保存成果字母數(shù)字空格中文符號統(tǒng)計(jì)復(fù)制、粘貼、剪貼和全選功效文本編輯器4.2流程圖框架文本編輯器編輯文獻(xiàn)編輯文獻(xiàn)復(fù)制粘貼復(fù)制粘貼剪切全選統(tǒng)計(jì)新建打開保存另存加密保存加密另存退出部分具體代碼展示及實(shí)現(xiàn)字母數(shù)字空格中文符號統(tǒng)計(jì)publicclassCheckThreadextendsThread{ privateJTextPanetextPane; privateJLabellabel; publicCheckThread(JTextPanetextPane,JLabellabel){ this.textPane=textPane; this.label=label; } publicvoidrun(){ while(true){ Stringstr=textPane.getSelectedText(); if(str==null){ str=textPane.getText(); } intletter=0; intnum=0; intspace=0; intchinese=0; intpoint=0; inttotal=0; for(inti=0;i<str.length();i++){ charc=str.charAt(i); if((c>='a'&&c<='z')||(c>='A'&&c<='Z')){ letter++; }elseif(c>='0'&&c<='9'){ num++; }elseif(c==''){ space++; }elseif(c>='\u4e00'&&c<='\u9fa5'){ chinese++; }else{ point++; } total++; } label.setText("字母:"+letter+"數(shù)字:"+num+"空格:"+space+"中文:"+chinese+"符號:"+point+"總數(shù):"+total); try{ Thread.sleep(300); }catch(InterruptedExceptione){ e.printStackTrace(); } } }}文獻(xiàn)創(chuàng)立publicclassreadfile{ publicstaticvoidmain(Stringargs[])throwsIOException{ FileNameExtensionFilterfilter=newFileNameExtensionFilter("*.txt","txt"); JFileChooserfc=newJFileChooser(); fc.setFileFilter(filter); fc.setMultiSelectionEnabled(false); intresult=fc.showSaveDialog(null); if(result==JFileChooser.APPROVE_OPTION){ Filefile=fc.getSelectedFile(); if(!file.getPath().endsWith(".txt")){ file=newFile(file.getPath()+".txt"); } System.out.println("filepath="+file.getPath()); FileOutputStreamfos=null; try{ if(!file.exists()){//文獻(xiàn)不存在則創(chuàng)立一種 file.createNewFile(); } fos=newFileOutputStream(file); fos.write("文獻(xiàn)內(nèi)容".getBytes()); fos.flush(); }catch(IOExceptione){ System.err.println("文獻(xiàn)創(chuàng)立失?。?); e.printStackTrace(); }finally{ if(fos!=null){ try{ fos.close(); }catch(IOExceptione){ e.printStackTrace(); } } } }}}項(xiàng)目總結(jié)通過這次的實(shí)訓(xùn),我對程序的設(shè)計(jì)由來更深層次的認(rèn)識,也讓我對這門編程語言這門課程有了更深的理解。課程設(shè)計(jì)是培養(yǎng)學(xué)生綜合運(yùn)用所學(xué)知識,發(fā)現(xiàn)、提出、分析和解決實(shí)際問題,鍛煉實(shí)踐能力的重要環(huán)節(jié),是對學(xué)生實(shí)際工作能力的具體訓(xùn)練和考察過程。在這次的設(shè)計(jì)過程中,也讓我發(fā)現(xiàn)自己對知識掌握還存在著諸多的局限性知促,例如說在打開一種含有中文的TXT文獻(xiàn)時(shí),在中文顯示時(shí)顯示的就是一堆亂碼,最后通過老師懂得得知,是由于中文的一兩個(gè)字節(jié)讀取的,而我們的編程代碼是以一種字節(jié)讀取的,因此出現(xiàn)錯(cuò)誤。該程序不僅能夠運(yùn)用線性表還能夠運(yùn)用串、單鏈表司實(shí)現(xiàn)。同時(shí)我也明白了自己尚有哪些地方需要改善,自己要在哪些地方進(jìn)行自我的提高。尤為重要的是,這次課程設(shè)計(jì)使我們懂得了理論與實(shí)際結(jié)合是很重要的。在設(shè)計(jì)的過程中讓我感覺到了諸多知識點(diǎn)是還沒有掌握的,需要我們自己上網(wǎng)進(jìn)行搜索查詢來解決。我們應(yīng)當(dāng)能獨(dú)立的去發(fā)現(xiàn)問題并解決問題,應(yīng)用一切資源來協(xié)助自己設(shè)計(jì)。需要在此后的學(xué)習(xí)過程中不停的加強(qiáng)對知識點(diǎn)的掌握,還要多看書,多多地上網(wǎng)查找資料,不停的學(xué)習(xí)以充實(shí)自己。在這兩周的課程設(shè)計(jì)中我不停地改錯(cuò),不停地調(diào)試。我的努力終于有了成果。最讓我受益匪淺得失整個(gè)設(shè)計(jì)的過程,這個(gè)過程也是我不停學(xué)習(xí)的一種過程,不僅鍛煉了我的實(shí)際操作能力,并且培養(yǎng)了嚴(yán)密的思維

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

最新文檔

評論

0/150

提交評論