流、文件及基于文本的应用

上传人:xins****2008 文档编号:111121690 上传时间:2019-11-01 格式:DOC 页数:6 大小:83KB
返回 下载 相关 举报
流、文件及基于文本的应用_第1页
第1页 / 共6页
流、文件及基于文本的应用_第2页
第2页 / 共6页
流、文件及基于文本的应用_第3页
第3页 / 共6页
流、文件及基于文本的应用_第4页
第4页 / 共6页
流、文件及基于文本的应用_第5页
第5页 / 共6页
点击查看更多>>
资源描述

《流、文件及基于文本的应用》由会员分享,可在线阅读,更多相关《流、文件及基于文本的应用(6页珍藏版)》请在金锄头文库上搜索。

1、 1、 实验名称流、文件及基于文本的应用2、 实验目的1) 理解数据流的概念。2) 理解Java流的层次结构。3) 理解并掌握文件的读写操作方法。3、 实验记录1.编写一个java Application程序,接受用户输入的10个整数,比较并输出其中的最大值和最小值。步骤(1):定义一个包含main方法的Application类MaxMinClass。步骤(2):在MaxMinClass类中添加如下两个方法,分别求取10个整数的最大值和最小值:static int maxInt(int data,int n)static int minInt(int data,int n)步骤(3):在mai

2、n方法中从键盘输入10个整数存放到数组data中,然后调用maxInt、minInt方法求取最大值和最小值,最后输出最大值和最小值。步骤(4):保存文件MaxMinClass.java,然后编译、调试程序。源程序如下:import java.io.*;public class MaxMinClass public static void main(String args) String s=new String10; /创建一个大小为10的数组空间int data=new int10;int i;int max,min;for(i=0;is.length;i+) try BufferedRea

3、der in=new BufferedReader(new InputStreamReader(System.in);System.out.print(input:data+i+=);si=in.readLine();datai=Integer.parseInt(si); /将字符转化为整形数据 catch(IOException e)System.out.print(输入的初始数据为:);for(i=0;i10;i+)System.out.print( +datai); max=maxInt(data, i);min=minInt(data, i);System.out.println(n+

4、最大值:+max+t+最小值:+min);static int maxInt(int data,int n) /求最大值int m=data0;for(n=0;ndata.length;n+)if(m=datan)m=datan; return m;static int minInt(int data,int n) /求最小值 int m=data0; for(n=0;n=datan) m=datan; return m;运行结果如下:2.编写一个程序,能将一个源程序中的空行及注释去掉,并将处理后的内容写到目标文件中。(源文件名称和目标文件名称均要求以命令行参数形式输入)步骤(1):定义一个包

5、含main方法的Application类CopyFile.步骤(2):在CopyFile类中添加delComm方法,实现将一行中的注释去掉。: static String delComm(String s)步骤(3):在main方法中通过命令行参数获取源文件名和目标文件名;然后读取源文件中的每一行信息,并调用delComm取出行中的注释;其次判断该行是否为空行,若是则不将此行信息写到目标文件,否则将处理后的行信息写到目标文件。步骤(4):保存文件为CopyFile.java,编译并调试程序。步骤(5):打开目标文件,检查该文件的内容是否正确。源程序如下:import java.io.*;cla

6、ss FileCopypublic static void main(String args) tryint LineCount=0;BufferedReader input=new BufferedReader(new FileReader(MaxMinClass.java);BufferedWriter output=new BufferedWriter(new FileWriter(MaxMinClass.txt);String c=input.readLine();String s;while(c!=null) s=deleteComment(c); s=s.trim();if (!s

7、.equals() output.write(LineCount+:+deleteComment(c); output.newLine(); System.out.println(deleteComment(c); LineCount+; c=input.readLine(); input.close(); output.close();catch(IOException e)System.out.println(e); static String deleteComment(String s) int pos=0; if(s=null) return s; pos=s.indexOf(/);

8、 if (pos0) return s; elsereturn s.substring(0,pos); 3. 从一个文本文件中读入30个学生的姓名和成绩,计算所有学生的最高分、最低分和平均分,并将结果写入另外一个文件。源程序如下:import java.io.*;class Student String name; int index;Student(String name,int index)this.name=name;this.index=index; /定义一个学生类,包含姓名、分数两个域变量和一个构造方法public class Score static int maxInt(int

9、 data) int t=data0;for(int i=0;idata.length;i+)if(tdatai)t=datai;return t; /求最高分的方法staticint minInt(int data) int k=data0;for(int i=0;idatai)k=datai;return k; /求最低分的方法staticdouble diviInt(int data) double num=0.0;for(int i=0;idata.length;i+)num+=datai;return num; /求平均分的方法static String find(String s)

10、int pos=0; if(s=null) return s; pos=s.indexOf(,); if (pos0) return s; elsereturn s.substring(pos+1,s.length(); /获取每个学生的分数的方法public static void main(String args) int grade=new int30;try BufferedReader input=new BufferedReader(new FileReader(Student.txt); /读入一个Student.txt文件 BufferedWriter output=new B

11、ufferedWriter(new FileWriter(test.txt); /将处理后的Student.tex文件写到test.tex文件中 String c=input.readLine(); /每行的读入 String s; int i=0; while(c!=null) s=find(c); gradei+=Integer.parseInt(s); c=input.readLine(); output.write( 最高分为:+maxInt(grade);/获得最高分 output.newLine(); output.write( 最低分为:+minInt(grade);/获得最低分

12、 output.newLine(); output.write( 平均分为:+diviInt(grade)/i);/获得平均低分 input.close(); output.close(); catch(IOException e) System.out.println(e); 成绩文件Student.txts01,67s02,86s03,54s04,78s05,90s06,89s07,75s08,69s09,88s10,98s11,58s12,67s13,53s14,49s15,60s16,78s17,67s18,92s19,73s20,56s21,65s22,76s23,68s24,90s25,85s26,78s27,67s28,96s29,80s30,81生成的文件test.txt最高分为:98最低分为:49平均分为:74.43333333333334四、个人小结 本次实验是编写三个java程序都具有相当的难度,涉及到流、文件及基于文本

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 大杂烩/其它

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号