欢迎来到天天文库
浏览记录
ID:57330829
大小:59.50 KB
页数:8页
时间:2020-08-12
《输入输出流实验.doc》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、深圳大学实验报告课程名称:Java实验序号:上机实践9实验名称:统计英文单词&读取Zip文件班级:计算机3姓名:卢志敏同组人:实验日期:2008年12月29日教师签字:一、实验目的n掌握RandomAccessFile类的使用。n掌握ZipInputStream流的使用。二、实验环境JDK1.5WinXpSP3三、实验要求实验1n使用RandomAccessFile流统计一篇英文中的单词,要求如下:(1)一共出现了多少个英文单词。(2)有多少个互不相同的单词。(3)给出每个单词出现的频率,并将这些单词按频率大小顺序显示在一个Text--Area中。
2、实验2n读取book.zip,并将book.zip中含有的文件重新存放到当前目录中的book文件夹中,即将book.zip的内容解压到book文件夹中。四、实验步骤和内容实验1源代码:WordStatistic.javaimportjava.io.*;importjava.util.Vector;publicclassWordStatistic{VectorallWords,noSameWord;WordStatistic(){allWords=newVector();noSameWord=newVector();}publicvoidwordSt
3、atistic(Filefile){try{RandomAccessFileinOne=newRandomAccessFile(file,"rw");//创建指向文件file的inOne的对象RandomAccessFileinTwo=newRandomAccessFile(file,"rw");//创建指向文件file的inTwo的对象longwordStarPostion=0,wordEndPostion=0;longlength=inOne.length();intflag=1;intc=-1;for(intk=0;k<=length;k++
4、){c=inOne.read();//inOne调用read()方法booleanboo=(c<='Z'&&c>='A')
5、
6、(c<='z'&&c>='a');if(boo){if(flag==1){wordStarPostion=inOne.getFilePointer()-1;flag=0;}}else{if(flag==0){if(c==-1)wordEndPostion=inOne.getFilePointer();elsewordEndPostion=inOne.getFilePointer()-1;inTwo.seek(wordStar
7、Postion);//inTwo调用seek方法将读写位置移动到wordStarPostionBytecc[]=newbyte[(int)wordEndPostion-(int)wordStarPostion];inTwo.readFully(cc);//inTwo调用readFully方法Stringword=newString(cc);allWords.add(word);if(!noSameWord.contains(word))noSameWord.add(word);}flag=1;}}inOne.close();inTwo.close(
8、);}catch(Exceptione){}}publicVectorgetAllWords(){returnallWords;}publicVectorgetNoSameWord(){returnnoSameWord;}}StatisticFrame.javaimportjava.awt.*;importjava.awt.event.*;importjava.util.Vector;importjava.io.File;publicclassStatisticFrameextendsFrameimplementsActionListener{Wo
9、rdStatisticstatistic;TextAreashowMessage;ButtonopenFile;FileDialogopenFileDialog;VectorallWord,noSameWord;publicStatisticFrame(){statistic=newWordStatistic();showMessage=newTextArea();openFile=newButton("OpenFile");openFile.addActionListener(this);add(openFile,BorderLayout.NOR
10、TH);add(showMessage,BorderLayout.CENTER);openFileDialog=newFi
此文档下载收益归作者所有