.
广西科技大学
计通学院
《Java面向对象程序设计》实验
实验八 输入输出流
学生:××× 学 号:××× 班 级:××× 指导老师:×××
专 业:计算机科学与技术
提交日期:×××年×× 月××日
实验报告容
.
.
1. 实验目的
掌握字符输入、输出流用法; 掌握使用Scanner类解析文件; 掌握Console流的使用。
2. 实验容
实验教材-第12章实验1、2、3
字符输入输出流;Scanner类和Console类。 要求: 完善程序,给出实验结果截图;
完成试验后练习。
3. 程序代码及运行结果:
实验1 举重成绩单 // AnalysisResult.java import java.io.*; import java.util.*;
public class AnalysisResult {
public static void main(String[] args) { File fRead=new File(\
File fWrite=new File(\ try{
Writer out=new FileWriter(fWrite); BufferedWriter bufferWrite=new BufferedWriter(out);
Reader in=new FileReader(fRead); BufferedReader bufferRead=new BufferedReader(in);
String str=null;
while((str=bufferRead.readLine())!=null){ double
.
.
totalScore=Fenxi.getTotalScore(str);
str=str+\总成绩:\ System.out.println(str); bufferWrite.write(str); bufferWrite.newLine(); }
bufferRead.close(); bufferWrite.close(); }
catch(IOException e){
System.out.println(e.toString()); } } }
// Fenxi.java
import java.util.*; public class Fenxi {
public static double getTotalScore(String s) { String regex = \
String digitMess = s.replaceAll(regex,\ StringTokenizer fenxi = new StringTokenizer(digitMess,\ double totalScore=0;
while(fenxi.hasMoreTokens()){ double
score=Double.parseDouble(fenxi.nextToken()); totalScore=totalScore+score; }
return totalScore; }
.
.
}
// score.txt
:三, 抓举成绩 106kg, 挺举 189kg。 :四, 抓举成绩 108kg, 挺举 186kg。 :周五, 抓举成绩 112kg, 挺举 190kg。
运行结果如图1所示
图1
实验2 统计英文单词 // WordStatistic.java import java.io.*; import java.util.*;
public class WordStatistic {
Vector
allWord=new Vector
noSameWord=new Vector
sc=new Scanner(file); sc.useDelimiter(regex); }
.
.
catch(IOException exp){
System.out.println(exp.toString()); } }
void setFileName(String name){ file=new File(name); try{
sc=new Scanner(file); sc.useDelimiter(regex); }
catch(IOException exp){
System.out.println(exp.toString()); } }
void WordStatistic() { try{
while(sc.hasNext()){
String word=sc.next(); allWord.add(word);
if(!noSameWord.contains(word)) noSameWord.add(word); } }
catch(Exception e){} }
public Vector
public Vector
.