2 jjzzggkk jjzzggkk 于 2016.05.11 17:48 提问

初学者有关IO流统计成绩到另一个文件的问题

编写一个程序RecordScore.java用来记录某课程的成绩,要求从键盘输入学生姓名和成绩,每行输入一个学生的成绩,输入end#表示输入结束。程序要统计出课程的平均成绩,并将输入的学生成绩和平均成绩保存到soor.txt文件。(提示:字符串的方法
split(" ")可以返回字符串中以空格分割的字符串数组。如str="张三 80";String[] s=
str.split(" ");则s[0]="张三",s[1]="80")
题目部分图片
图片说明
自己写的代码如下
package IOlianxi;
import java.io.*;
import java.util.*;
public class RecordScore {
public static void main(String[] args) {
try {
InputStreamReader str=new InputStreamReader(System.in);
BufferedReader br=new BufferedReader(str);
BufferedWriter bw=new BufferedWriter(new FileWriter("E://soore.txt"));
String st=null;
String[] s=st.split("");
while(!(st=br.readLine()).equals("quit")){

bw.write(s);
bw.newLine();
}
br.close();
bw.close();
}catch (ArrayIndexOutOfBoundsException e){
System.out.println("没有指定文件");
}catch (Exception e) {
e.printStackTrace();
}
}
}
但是这个代码是错的,好像不能方数组,这里报错后面都不知道怎么写了
图片说明
都不知道怎么写了,求大神

2个回答

havedream_one
havedream_one   2016.05.11 20:41
已采纳
int count;
double score;
double avg;
while(!(st=br.readLine()).equals("quit")){
String[] tmp = st.split(" ");
score+= Double.valueOf(tmp[1]);//统计成绩
count++;//统计学生数
bw.write(st)
bw.newLine();
}
bw.write(score/count);
//bw.write(String.valueOf(score/count));上面错误就改成下面的这一条

andy_67
andy_67   2016.05.11 18:05

BufferedWriter可以放String,你需要读出字符串
writer = new BufferedWriter(new OutputStreamWriter(
new FileOutputStream(destFile, true)));
writer.write(sb.toString());
writer.flush();

Csdn user default icon
上传中...
上传图片
插入图片
准确详细的回答,更有利于被提问者采纳,从而获得C币。复制、灌水、广告等回答会被删除,是时候展现真正的技术了!
其他相关推荐
IO流大文件操作----从一个文件复制到另一个文件
IO流大文件操作----从一个文件复制到另一个文件。思想在于,将大文件内容分成若干的小内容分批次进行发送。
Java基础知识IO流(拷贝文本文件)
要求:将c盘下的一个文本文件复制到D盘复制的原理:其实就是将c盘下的文件数据存储到D盘的一个文件中。步骤: 1. 在d盘创建一个文件,用于存储c盘文件中的数据。 2. 定义读取文本文件流和c盘文件进行关联 3. 通过不断的读写完成数据的存储 4. 关闭资源注意: 这里使用到了Writer的另外一个write方法: public abstract int read(char[] c
用IO流编写一个程序,统计并输出某个文本文件中“a”字符的个数
import java.io.BufferedReader;import java.io.FileNotFoundException;import java.io.FileReader;import java.io.IOException;public class CountA { public static void main(String[] args) throws IOExceptio
简易学生管理系统(IO流、文件、)
之前用ArrayList做过简易管理学生管理系统。实现原理基本差不多。从键盘输入到程序,读出来赋给两个变量(姓名和学号),写对象(Object对象流)到文件........ 具体实现如下: package cn.SystemStudent; import java.io.File; import java.io.FileInputStream; import java.io.FileNotF
文件IO 实现学生信息管理系统
嗯,为了熟悉文件IO的用法 下面是代码部分 1、头文件#define DATA_PATH "./stu.dat" #define NEW_PATH "./new.dat" #define MAXSIZE 100 #include<windows.h> struct student { int id; char name[10]; int chinese;
IO流_合并流读取两个文件的内容复制到一个文件中
package cn.itcast_06; import java.io.BufferedOutputStream; import java.io.FileInputStream; import java.io.FileOutputStream; import java.io.IOException; import java.io.InputStream; import java.io.Sequ
IO流读取文件再写入另外一个文件乱码问题
直接看例子吧import java.io.BufferedReader; import java.io.File; import java.io.FileInputStream; import java.io.FileNotFoundException; import java.io.FileOutputStream; import java.io.IOException; import java
简单的IO流应用-将文件夹中的所有文件拷贝到指定目录下
import java.io.File; import java.io.FileInputStream; import java.io.FileOutputStream; import java.io.IOException;            /**      * @author      * 文件夹拷贝(将文件夹中所有文件拷贝到指定文件夹)      *      *
IO流--多级文件夹下的所有目录复制到指定目录下
如题:/** * 将多级目录H:\\aa 目录下,.java 复制到 h:\\cc下 * @author ZYxiao * */ public class CopyFileFolder { public static void main(String[] args) throws IOException { File inputFile = new File
Java IO流将信息写入文本文件
我们在编程的时候需要把一些信息写入到文本文件中去,比如错误信息,日志信息等。这里罗列几个把信息写入文件的方法: import java.io.*;public class Test{ public static void main(String[] args) { try { BufferedWriter bw = n