【免费下载】实验8输入输出流
《Java面向对象程序设计》实验-实验八(输入输出流)

广西科技大学计通学院《Java面向对象程序设计》实验实验八输入输出流学生姓名:×××学号:×××班级:×××指导老师:×××专业:计算机科学与技术提交日期:×××年×× 月××日实验报告内容1. 实验目的掌握字符输入、输出流用法;掌握使用SCanner类解析文件;掌握COnsole流的使用。
2. 实验内容实验教材-第12章实验1、2、3字符输入输出流;SCanner类和Console类要求:完善程序,给出实验结果截图;完成试验后练习。
3. 程序代码及运行结果:实验1举重成绩单// AnalysisResult.javaimport java.io.*;import java.util.*;PUbIiC class An alysisResult {PUbIiC StatiC void main( Stri ng[] args) {File fRead=new File("score.txt");File fWrite=new File("scoreA nalysis.txt"); try{Writer out=new FiIeWriter(fWrite);BUfferedWriter bufferWrite=newBUfferedWriter(out);Reader in=new FiIeReader(fRead);BUfferedReader bufferRead=newBUfferedReader(i n);String str=n ull;WhiIe((Str=bufferRead.readLi ne())!=null){ doubletotalScore=Fe nxi.getTotalScore(str);Str=St 叶" 总成绩:"+totalScore;SyStem.out.pri ntln( str);bufferWrite.write(str); bufferWrite. newL in e();}bufferRead.close();bufferWrite.close();}CatCh(IOEXCePti on e){SyStem.out.pri ntl n(e.toStri ng());}}}// Fenxi.javaimport java.util.*;PUbIiC class FenXi {PUbIiC StatiC double getTotalScore(Stri ng S) { String regex = "[^0123456789.]";Stri ng digitMess = s.replaceAII(regex,"*");Stri ngToke nizer fenxi = newStri ngToke ni zer(digitMess,"*");double totalScore=0;while(fe nxi.hasMoreToke ns()){doubleSCOre=Double.parseDouble(fe nxi. nextToke n());totalScore=totalScore+score;}return totalScore;// score.txt姓名: 张二, 抓举成绩 106kg, 挺举189kg 姓名: 李四, 抓举成绩 108kg , 挺举186kg 姓名: 周五, 抓举成绩 112kg , 挺举190kg运行结果如图1所示 CatCh(IOEXCePti On exp){SyStem.out.pri ntln (exp.toStri ng());} }void SetFiIeName(Stri ng n ame){姓名:张三,抓举成绩106kg , 姓名:李四,抓举成绩108kg , 姓名:周五,抓举成绩112kg,挺举189kg o 总成绩:295.0 梃举186kg o 总成绩:294.0 挺举190kg o 总成绩:302.0实验2统计英文单词 // WOrdStatiStiC.java import java.io.*; import java.util.*;PUbIiC class WOrdStatiStiC { VeCtOr<Stri ng> allWord, noSameWord;FiIe file=new File("e nglish.txt"); SCanner sc=n ull; String regex; WOrdStatiStiC (){allWord=new VeCtOr<Stri ng>(); no SameWOrd=new VeCtOr<Stri ng>(); regex="[∖∖s ∖∖d ∖∖p{Pu net}]+";// try{sc=new Scann er(file);正则表达式file=new File (n ame);try{sc=new Scann er(file); eDelimiter(regex);}CatCh(IOEXCePti on exp){SyStem.out.pri ntln (exp.toStri ng());}}void WOrdStatiStiC() {try{WhiIe(SC.hasNext()){ String WOrd=SC .n ext();allWord.add(word);if(!no SameWord.c Ontain S(WOrd)) noSameWord.add(word);}}CatCh(EXCePti on e){}}PUbIiC VeCtOr<Stri ng>getAllWord(){ return allWord;}PUbIiC VeCtOr<Stri ng>getNoSameWord(){ return no SameWord;}// OUtPUtWOrdMeSS.javaimport java.util.*;PUbliC class OUtPUtWOrdMeSS {PUbIiC StatiC void main( Stri ng[] args) {VeCtOr<Stri ng> allWord, noSameWord;WOrdStatiStiC StatiStiC=newWOrdStatiStiC();StatiStiC.setFileName("hello.txt");StatiStiC.WordStatistic();allWord=statistic.getAllWord();no SameWOrd=StatiStiC.getNoSameWord();SyStem.out.pri ntl n(" 共有"+allWord.size()+" 个英文单词");SyStem.out.pri ntl n(" 有"+noSameWord.size()+"个互不相同英文单词");SyStem.out.pri ntln (" 按出现的频率排列:");int coun t[]=new in t[ no SameWord.size()];for(i nt i=0;i< no SameWord.size();i++){Stri ng s1= no SameWord.eleme ntAt(i);for(i nt j=O;j<allWord.size();j++){Stri ng s2=allWord.eleme ntAt(j);if(s1.equals(s2))coun t[i]++;}}for(i nt m=0;m <no SameWord.size();m++){for(i ntn=m+1; n<no SameWord.size( );n++){if(co Un t[ n]>co Un t[m]){ Stri ngtemp=no SameWordeIeme ntAt(m);no SameWord.setEleme ntAt( no SameWord.eleme ntAt( n), m) ;no SameWord.setEleme ntAt(temp,n) ;int t=co Un t[m];coun t[m]=co unt[n];coun t[ n]=t;}}}for(i nt m=0;m <no SameWord.size();m++){doublefreque ncy=(1.0*co Un t[m])∕allWord.size();SyStem.out.pri ntf("%s%-7.3f",no SameWord.eleme ntAt(m),freque ncy);}}}运行结果如图2所示共有6个英文单词有6个互不相同英文单词按岀现的解排列:what:0.167 areιθΛ67 you:0.167 doing:0,167 is:0*167 Java:0,167图2实验3密码流// PaSSWOrdJaVaimport java.io.*;PUbliC class PaSSWOrd {PUbliC StatiC void main( Stri ng[] args) { boolea n SUCCeSS=false; int coun t=0; Con sole cons; char[] PaSSWd;con S=SyStem.c on sole(); while(true){SyStem.out.pri nt(" 输入密码:"); PaSSWd=C on s.readPassword(); coun t++;String PaSSWOrd= new Strin g(passwd); if(password.equals("tiger123")){SUCCeSS=true; SyStem.out.pri ntl n("密码正确!");break; }else{SyStem.out.pri ntl n("密码"+password+"不正确!");}if(cou nt==3){SyStem.out.pri ntl n("码都不正确!");SyStem.exit(0); } }if(success){File file=new File("score1.txt try{您第"+count+"次输入的您第"+count+"次输入的您"+count+"次输入的密FileReader inθne=new FileReader(file); BUfferedReader in Tow=newBUfferedReader(i nθn e);Stri ng s=n ull;WhiIe((s=i nTow.readLi ne())!=null){SyStem.out.pri ntl n( s); }inθn e.close(); in Tow.close(); }catch(IOExceptio n ioe){} } } }// score.txt姓名: 张三, 抓举成绩 106kg, 挺举189kg姓名: 李四, 抓举成绩 108kg , 挺举186kg 姓周五, 抓举成绩 112kg , 挺举190kg运行结果如图3所示 4. 实验后的练习:实验1有如下格式的成绩单(文本格式) score.txt 。
JAVA实验报告(异常和输入输出流部分,含答案)

}
}
publicclassNoOprandExceptionextendsException {
publicNoOprandException(String s ){
super(s);
}
}
importjava.util.Scanner;
publicclassTest {
publicstaticvoidmain(String[] args)throwsException{
输出结果:3因j为除式,除数不能为0,属于运行异常中的ng.ArithmeticException: / by zero,不属于myname.length()>2和NullPointerException的情况,因此输出3
2.下面是一个名称为NegativeAmountException的自定义异常类,表示一个不正常的银行账目事件类。填充下面的语句,完成该类的编写。
2)在main方法中,去掉刚才添加的语句,添加下面几行语句,写出并分析结果
swap1(10,12);
System.out.println("执行swap1(10,12)后");
System.out.println("c1引用的牌是:"+c1+"\tc2引用的牌是:"+c2);
System.out.println("第11张牌是:"+cards[10]+"\t第13张牌是:"+cards[12]);
System.out.println("请输入两个数");
Scanner sc=newScanner(System.in);
实验八流类库与输入输出

实验⼋流类库与输⼊输出实验报告课程:⾯向对象技术学号:1010431079 姓名:郝祥海班级:2010级计算机软件(嵌⼊式系统)1班教师:周晓计算机科学与技术系实验⼋流类库与输⼊输出⼀、实验⽬的及要求1.熟悉流类库中常⽤的类及其成员函数的⽤法;2.掌握标准输⼊/输出及格式控制;3.掌握对⽂件的应⽤⽅法。
⼆、实验环境硬件:计算机软件:Microsoft Visual C++三、实验内容1.声明⼀个学⽣类数组,输⼊数据,显⽰出来,使⽤I/O流把此数组的内容写⼊磁盘⽂件,再显⽰出⽂件内容。
学⽣类具有的属性如下:姓名name、学号number、班号classno、性别sex、出⽣⽇期birthday,其中“出⽣⽇期”声明为⼀个“⽇期”类内嵌⼦对象。
四、实验结果(附截图)五、总结通过本次实验,我了解到流是⼀种抽象,它负责在数据的⽣产者和消费者之间建⽴联系,并管理数据的流动。
我对⽂件的输⼊输出流有了更深的了解。
六、附录(源程序清单)#include#include#includeusing namespace std;class Student{public:Student(string n,int nu,int cl,char s);string GetName(){return name;}int GetNumber(){return number;}int GetClassno(){return classno;}char GetSex(){return sex;}private:string name;int number;int classno;char sex;};Student::Student(string n,int nu,int cl,char s):name(n),number(nu),classno(cl),sex(s){}int main(){Student a[3] = {Student("Frank",101,1,'M'), Student("Lucy",201,2,'W'), Student("Mike",301,3,'M')}; int i;for(i=0;i<3;i++){ cout << "姓名\t" << a[i].GetName()<< "\t学号\t" << a[i].GetNumber()<< "\t班号\t" << a[i].GetClassno()<<"\t性别\t"<<< endl;}ofstream f;f.open("C:\\student.txt", ios::out);for(i=0;i<3;i++){f << "姓名\t" << a[i].GetName()<< "\t学号\t" << a[i].GetNumber()<< "\t班号\t" << a[i].GetClassno()<<"\t性别\t"<<< endl;}cout<cout<<"student.txt⽂件中的内容如下"<f.close();ifstream f1("C:\\student.txt", ios::in);char ch;while(f1.get(ch))cout<return 0;}。
OOP_8输入输出流

数据的传输不用关心数据的结构,与设备无关。
2
8.1 概述
1.输入输出库中的流类层次
最清晰的设计方案是首先定义一个用来描述流的基类。 然后从它派生出用于描述输入流的basic_istream和描述输出 流的basic_ostream,但实际上定义了两个公共基类ios_base 和basic_ios 。
返回流对象的引用
操作符>>可处理的类型:
以引用方式将 数据读入整型
26
8.3 高层输入输出类
2. basic_ostream basic_ostream是模板类,从basic_ios派生而来,为用户 提供高层输出服务。
虚基类
27
8.3 高层输入输出类
成员函数 功能
将一个字符写到输出流中
将字符写到输出流中 定位到输出流的指定位置 返回输出流的当前位置 刷新缓冲区
char str[10]; cin.get( str, 10,'!');
读入信息保存 到字符数组b
getline读入结束有3种情况: 遇到文件结束标志: 遇到行结束标志: 已经读取了s-1个字符:
25
8.3 高层输入输出类
为了对内建数据类型进行格式化输入,basic_istream重载 了右移操作符>> 成员函数
清除所有的输入 状态标志包括 EOF标志
18
21
8.2 ios_base 和 basic_ios
basic_ios重载了操作符!,并提供了basic_ios到void*
类型的转换。
如 果 设 臵 了 failbit 或 badbit 则 返 回 0 ( false) 否则返回非0(ture) 如 果 设 臵 了 failbit 或 badbit 则 返 回 ture, 否 则 返回false
输入输出流实验报告

输入输出流实验报告1.编写一个应用程序,读取一个文本文件的内容。
源程序:Work9_1.javaimport java.io.*;public class Work9_1{public static void main(String args[ ]){File readFile=new File("Student.txt"),writeFile=new File("Hello.txt");try{ FileReader inOne=new FileReader("Student.txt");BufferedReader inTwo= new BufferedReader(inOne);FileWriter tofile=new FileWriter("hello.txt");BufferedWriter out= new BufferedWriter(tofile);String s=null;int i=0;while((s=inTwo.readLine())!=null){i++;out.write(s);out.newLine();}out.flush();out.close();tofile.close();inOne=new FileReader("hello.txt");inTwo= new BufferedReader(inOne);while((s=inTwo.readLine())!=null){System.out.println(s);}inOne.close();inTwo.close();}catch(IOException e){System.out.println(e);}}}所读取的文本文件截图:运行界面:2.编写一个应用程序,将用户从键盘输入的10行文字存入文件。
输入输出流.ppt

输入流——表示数据从某个载体或设备传送 到内存
输出流——表示数据从内存传送到某个载体 或设备
键盘 文件
输入流
输出流
内 存
显示器 文件
光笔....
打印机...
C++的输入输出流
在进行I/O操作时——
首先进行“打开”操作,使流和文件发生联系 建立联系后的文件才允许数据流入或流出 I/O结束后,使用“关闭”操作使文件与流断开联系。
dec:34
cout<<“hex:”<<hex<<a<<endl;
hex:22
cout<<“oct:”<<oct<<a<<endl;
oct:42
cout<<setfill(‘*’)<<setw(10)<<dec<<a<<endl;********34
}
用流对象的成员控制格式输出
说明: cout.width(n) cout.fill(c)
对象 含义 对应设备 对应的类
cin 标准输入流 键盘 istream_withassign
cout 标准输出流 显示器 ostream_withassign
cerr 或 clog
标准错误流
13.2 标准输出流
标准输出流——流向标准输出设备(显示器)的数据 cout流对象——在控制台(显示器)输出
用流插入运算符“<<”向cout输出数据. 如:
cout << “a=”<< a << endl; cout << 数据1 <<数据2 << 数据3;
输入输出流实验

深圳大学实验报告课程名称:Java实验序号:上机实践9实验名称:统计英文单词&读取Zip文件班级:计算机3 姓名:卢志敏同组人:实验日期:2008 年12 月29 日教师签字:一、实验目的⏹掌握RandomAccessFile类的使用。
⏹掌握ZipInputStream流的使用。
二、实验环境JDK1.5 WinXp SP 3三、实验要求实验1⏹使用RandomAccessFile流统计一篇英文中的单词,要求如下:(1)一共出现了多少个英文单词。
(2)有多少个互不相同的单词。
(3)给出每个单词出现的频率,并将这些单词按频率大小顺序显示在一个Text--Area 中。
实验2⏹读取book.zip,并将book.zip中含有的文件重新存放到当前目录中的book文件夹中,即将book.zip的内容解压到book文件夹中。
四、实验步骤和内容实验1源代码:WordStatistic.javaimport java.io.*;import java.util.Vector;public class WordStatistic{ Vector allWords,noSameWord;WordStatistic(){ allWords=new Vector();noSameWord=new Vector();}public void wordStatistic(File file){try { RandomAccessFile inOne=new RandomAccessFile(file,"rw");//创建指向文件file的inOne的对象RandomAccessFile inTwo=new RandomAccessFile(file,"rw");//创建指向文件file的inTwo的对象long wordStarPostion=0,wordEndPostion=0;long length=inOne.length();int flag=1;int c=-1;for (int k=0;k<=length;k++){ c=inOne.read(); //inOne调用read()方法boolean boo=(c<='Z'&&c>='A')||(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(wordStarPostion); //inTwo调用seek方法将读写位置移动到wordStarPostionByte cc[]=newbyte[(int)wordEndPostion-(int)wordStarPostion];inTwo.readFully(cc); //inTwo调用readFully方法String word=new String(cc);allWords.add(word);if(!noSameWord.contains(word))noSameWord.add(word);}flag=1;}}inOne.close();inTwo.close();}catch(Exception e){}}public Vector getAllWords(){ return allWords;}public Vector getNoSameWord(){ return noSameWord;}}StatisticFrame.javaimport java.awt.*;import java.awt.event.*;import java.util.Vector;import java.io.File;public class StatisticFrame extends Frame implements ActionListener{ WordStatistic statistic;TextArea showMessage;Button openFile;FileDialog openFileDialog;Vector allWord,noSameWord;public StatisticFrame(){ statistic=new WordStatistic();showMessage=new TextArea();openFile=new Button("Open File");openFile.addActionListener(this);add(openFile,BorderLayout.NORTH);add(showMessage,BorderLayout.CENTER);openFileDialog=new FileDialog(this,"打开文件对话框",FileDialog.LOAD);allWord=new V ector();noSameWord=new Vector();setSize(350,300);setVisible(true);addWindowListener(new WindowAdapter(){ public void windowClosing(WindowEvent e){ System.exit(0);}});validate();}public void actionPerformed(ActionEvent e){ noSameWord.clear();allWord.clear();showMessage.setText(null);openFileDialog.setVisible(true);String fileName=openFileDialog.getFile();if(fileName!=null){ statistic.wordStatistic(new File(fileName));allWord=statistic.getAllWords();noSameWord=statistic.getNoSameWord();showMessage.append("\n"+fileName+"中有"+allWord.size()+"个英文单词");showMessage.append("\n其中有"+noSameWord.size()+"个互不相同的英文单词");showMessage.append("\n按使用频率排列: \n");int count[]=new int[noSameWord.size()];for(int i=0;i<noSameWord.size();i++){ String s1=(String)noSameWord.elementAt(i);for(int j=0;j<allWord.size();j++){ String s2=(String)allWord.elementAt(j);if(s1.equals(s2))count[i]++;}}for(int m=0;m<noSameWord.size();m++){ for(int n=m+1;n<noSameWord.size();n++){ if(count[n]>count[m]){ String temp=(String)noSameWord.elementAt(m);noSameWord.setElementAt((String)noSameWord.elementAt(n),m);noSameWord.setElementAt(temp,n);int t=count[m];count[m]=count[n];count[n]=t;}}}for(int m=0;m<noSameWord.size();m++){showMessage.append("\n"+(String)noSameWord.elementAt(m)+":"+count[m]+"/"+allWord.size()+" ="+(1.0*count[m])/allWord.size());}}}}StatisticMainClass.javapublic class StatisticMainClass{ public static void main(String args[]){ new StatisticFrame();}}实验2源代码ReadZipFile.javaimport java.io.*;import java.util.zip.*;public class ReadZipFile{public static void main(String [] args){ File f = new File("book.zip");File dir = new File("Book");byte b[] = new byte[100];dir.mkdir();try{ ZipInputStream in = new ZipInputStream(new FileInputStream(f));ZipEntry zipEntry =null;while((zipEntry=in.getNextEntry())!=null){File file = new File(dir,zipEntry.getName());FileOutputStream out = new FileOutputStream(file);int n=-1;System.out.println(file.getAbsolutePath()+"的内容");while((n=in.read(b,0,100))!=-1){ String str= new String(b,0,n);System.out.println(str);out.write(b,0,n);}out.close();}in.close();}catch(IOException ee){System.out.println(ee);}}}运行效果截屏:五、实验后的练习在StatisticFrame的showMessage中增加单词按字典序排序输出的信息。
实验八-输入输出流

实验八输入输出流1.实验目的1、掌握字符输入、输出流的用法2、掌握使用Scanner类解析文件3、掌握Console流的使用2.实验内容1、根据附录里的源代码,按照注释要求,完成代码填空,使程序能够运行得出结果。
1) 实验1举重成绩单2) 实验2统计英文单词3) 实验3密码流4) 实验4学读汉字5)实验5 读取Zip文件2、设计编写程序完成以下任务。
1)修改实验2,要求按字典顺序输出全部不相同的单词。
2)参考实验3编写一个程序,程序运行时,要求用户输入的密码是:hello。
如果用户输入了正确的密码。
程序将输出“你好,欢迎你!”。
程序允许用户2次输入的密码不正确,一旦超过2次,程序将立刻退出。
3)在本机的磁盘系统中,找一个文件夹,利用File类的提供方法,列出该文件夹中的所有文件的文件名和文件的路径,执行效果如下:路径是xxx的文件夹内的文件有:文件名:abc.txt路径名:c:\temp\abc.txt--------------------------------------------文件名:def.txt路径名:c:\temp\def.txt知识点:File管理4)使用java的输入输出流将一个文本文件的内容读出并在控制台将文件中的内容打印出来。
(参考书上P184页)5)从控制台输入一串字符串,将该串字符串写入到磁盘某位置上的out.txt文件中去。
(参考教材P183页)6)使用java的输入输出流将一个文本文件的内容按行读取,每读一行就顺序添加行号,并写入到另一个文件中.7)定义一个Person类,包含姓名、年龄、身份证号码属性。
有一个带参数的构造方法用于对所有属性赋值,还有一个study的方法,里面只打印一条“我喜欢学习”的话。
写一个Test类,里面实例化若干个Person对象,并将这些对象写入到obj.txt文件中去。
8)创建c:/test.txt文件并在其中输入"hello world"创建一个输入流读取该文件中的文本并且把小写的l变成大写L再利用输出流写入到d:\test.txt中实现步骤:(1)在本地硬盘C盘下创建一个文件test.txt(2)创建一个包含main()方法的类,并在main中编写代码(3)运行代码并且测试结果实现过滤器的功能效果显示:知识点:IO字符流、String常用方法3.实验步骤略4.评分标准1.A——内容功能完善,编程风格好,人机接口界面好;2.B——内容功能完善,编程风格良好,人机接口界面良好;3.C——完成必做内容;4.D——能完成必做内容;5.E——未按时完成必做内容,或者抄袭(雷同者全部为E).参照书上实验按模版要求,将【代码】替换为Java程序代码,编写好完整的程序文档,最后运行得到的相关文件,把实验所得文件一起打包上交。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
}
catch(Exception e) {}
return hanzi;
对全部高中资料试卷电气设备,在安装过程中以及安装结束后进行高中资料试卷调整试验;通电检查所有设备高中资料电试力卷保相护互装作置用调与试相技互术关,系电,力根通保据过护生管高产线中工敷资艺设料高技试中术卷资,配料不置试仅技卷可术要以是求解指,决机对吊组电顶在气层进设配行备置继进不电行规保空范护载高与中带资负料荷试下卷高问总中题体资,配料而置试且时卷可,调保需控障要试各在验类最;管大对路限设习度备题内进到来行位确调。保整在机使管组其路高在敷中正设资常过料工程试况中卷下,安与要全过加,度强并工看且作护尽下关可都于能可管地以路缩正高小常中故工资障作料高;试中对卷资于连料继接试电管卷保口破护处坏进理范行高围整中,核资或对料者定试对值卷某,弯些审扁异核度常与固高校定中对盒资图位料纸置试,.卷保编工护写况层复进防杂行腐设自跨备动接与处地装理线置,弯高尤曲中其半资要径料避标试免高卷错等调误,试高要方中求案资技,料术编试交写5、卷底重电保。要气护管设设装线备备置敷4高、调动设中电试作技资气高,术料课中并3中试、件资且包卷管中料拒含试路调试绝线验敷试卷动槽方设技作、案技术,管以术来架及避等系免多统不项启必方动要式方高,案中为;资解对料决整试高套卷中启突语动然文过停电程机气中。课高因件中此中资,管料电壁试力薄卷高、电中接气资口设料不备试严进卷等行保问调护题试装,工置合作调理并试利且技用进术管行,线过要敷关求设运电技行力术高保。中护线资装缆料置敷试做设卷到原技准则术确:指灵在导活分。。线对对盒于于处调差,试动当过保不程护同中装电高置压中高回资中路料资交试料叉卷试时技卷,术调应问试采题技用,术金作是属为指隔调发板试电进人机行员一隔,变开需压处要器理在组;事在同前发一掌生线握内槽图部内 纸故,资障强料时电、,回设需路备要须制进同造行时厂外切家部断出电习具源题高高电中中源资资,料料线试试缆卷卷敷试切设验除完报从毕告而,与采要相用进关高行技中检术资查资料和料试检,卷测并主处且要理了保。解护现装场置设。备高中资料试卷布置情况与有关高中资料试卷电气系统接线等情况,然后根据规范与规程规定,制定设备调试高中资料试卷方案。
pSouth.add(voiceCharacters); add(pSouth,BorderLayout.SOUTH); pCenter=new Panel(); mycard=new CardLayout(); pCenter.setLayout(mycard); textHelp=new TextArea(); pCenter.add("hanzi",showCharacters); pCenter.add("help",textHelp); add(pCenter,BorderLayout.CENTER); menubar=new MenuBar(); menu=new Menu("帮助"); help=new MenuItem("关于学汉字"); help.addActionListener(this); menu.add(help); menubar.add(menu); setMenuBar(menubar); setSize(350,220); setVisible(true); addWindowListener(new WindowAdapter()
int i=0; while((s=【代码 3】)!=null)
}
{ StringTokenizer tokenizer=new StringTokenizer(s," ,'\n' ");
while(tokenizer.hasMoreTokens())
{ hanzi.append(tokenizer.nextToken());
CardLayout mycard;
TextArea textHelp;
MenuBar menubar;
Menu menu;
MenuItem help;
public StudyFrame()
{ chinese=new ChineseCharacters();
choice=new Choice();
choice.add("training1.txt");
showCharacters.setBackground(Color.green); getCharacters=new Button("下一个汉字");
voiceCharacters=new Button("发音");
voiceThread=new Thread(this);
choice.addItemListener(this);
choice.add("training2.txt");
choice.add("training3.txt");
showCharacters=new Label("",Label.CENTER); showCharacters.setFont(new Font("宋体",Font.BOLD,72));
实验八 输入输出流
【目的】 ①掌握字符输入、输出流的用法; ②掌握RandomAccessFil类的使用;
【内容】
1.学读汉字。 实验要求:
编写一个Java应用程序,要求如下: (1)可以将一个由汉字字符组成的文本文件读入到程序中; (2)单击名为“下一个汉字”的按钮,可以在一个标签中显示程序读入的一 个汉字; (3)单击名为“发音”的按钮,可以听到标签上显示的汉字的读音。 (4)用户可以使用文本编辑器编辑程序中用到的3个由汉字字符组成的文本 文件:training1.txt、training2.txt和training.txt,这些文本文件中的汉字 需要用空格、逗号或回车分隔。 ()需要自己制作相应的声音文件,比如:training1.txt文件包含汉字“你” ,那么在当前应用程序的运行目录中需要有“你.wav”格式的声音文件。 ()用户选择“帮助”菜单,可以查看软件的帮助信息。
Choice choice;
Button getCharacters,voiceCharacters;
Label showCharacters;
StringBuffer trainedChinese=null;
Clip clip=null;
Thread voiceThread;
int k=0;
Panel pCenter;
add(pNorth,BorderLayout.NORTH);
Panel pSouth=new Panel();
pSouth.add(getCharacters);
implements
对全部高中资料试卷电气设备,在安装过程中以及安装结束后进行高中资料试卷调整试验;通电检查所有设备高中资料电试力卷保相护互装作置用调与试相技互术关,系电,力根保通据护过生高管产中线工资敷艺料设高试技中卷术资配,料置不试技仅卷术可要是以求指解,机决对组吊电在顶气进层设行配备继置进电不行保规空护范载高与中带资负料荷试下卷高总问中体题资配,料置而试时且卷,可调需保控要障试在各验最类;大管对限路设度习备内题进来到行确位调保。整机在使组管其高路在中敷正资设常料过工试程况卷中下安,与全要过,加度并强工且看作尽护下可关都能于可地管以缩路正小高常故中工障资作高料;中试对资卷于料连继试接电卷管保破口护坏处进范理行围高整,中核或资对者料定对试值某卷,些弯审异扁核常度与高固校中定对资盒图料位纸试置,.卷编保工写护况复层进杂防行设腐自备跨动与接处装地理置线,高弯尤中曲其资半要料径避试标免卷高错调等误试,高方要中案求资,技料编术试5写交卷、重底保电要。护气设管装设备线置备4高敷动调、中设作试电资技,高气料术并中课3试中且资件、卷包拒料中管试含绝试调路验线动卷试敷方槽作技设案、,术技以管来术及架避系等免统多不启项必动方要方式高案,中;为资对解料整决试套高卷启中突动语然过文停程电机中气。高课因中件此资中,料管电试壁力卷薄高电、中气接资设口料备不试进严卷行等保调问护试题装工,置作合调并理试且利技进用术行管,过线要关敷求运设电行技力高术保中。护资线装料缆置试敷做卷设到技原准术则确指:灵导在活。分。对线对于盒于调处差试,动过当保程不护中同装高电置中压高资回中料路资试交料卷叉试技时卷术,调问应试题采技,用术作金是为属指调隔发试板电人进机员行一,隔变需开压要处器在理组事;在前同发掌一生握线内图槽部纸内故资,障料强时、电,设回需备路要制须进造同行厂时外家切部出断电具习源高题高中电中资源资料,料试线试卷缆卷试敷切验设除报完从告毕而与,采相要用关进高技行中术检资资查料料和试,检卷并测主且处要了理保解。护现装场置设。备高中资料试卷布置情况与有关高中资料试卷电气系统接线等情况,然后根据规范与规程规定,制定设备调试高中资料试卷方案。
//inTwo 读取一行
} }
StudyFrame.java
import java.awt.*;
import java.awt.event.*;
import java.io.*;
import javax.sound.sampled.*;
public
class
StudyFrame
extends
Frame
程序运行效果示例:
程序运行效果如下图所示:
程序模板:
ChineseCharacters.java
iቤተ መጻሕፍቲ ባይዱport java.io.*;
import java.util.StringTokenizer;
public class ChineseCharacters
{ public StringBuffer getChinesecharacters(File file)
voiceCharacters.addActionListener(this);