이 코드는 학생과 그 점수로 파일을 만듭니다. 편지 등급을 계산했지만 콘솔에 표시됩니다. 편지 등급을 새 파일로 가져 오려면 어떻게해야합니까? 또한 내가 지금 for 루프를 모두 가지고 있기 때문에 어떻게 각 테스트/퀴즈에 대한 평균을 콘솔에 인쇄 할 수 있습니까?이 문자 등급을 콘솔에 올려 놓지 않고 새 파일에 넣으려면 어떻게해야합니까?
import java.io.*;
import java.util.InputMismatchException;
import java.lang.*;
import java.util.*;
public class ReadFile {
private Scanner x;
public void openFile(){
try{
x = new Scanner (new File ("grades.txt"));
}
catch(Exception e){
System.out.println("could not find file");
}}
public void createFile()throws IOException {
try{
File file = new File("grades.txt");
Scanner s = new Scanner(file);
while(s.hasNext()){
{
String [] split = s.nextLine().split(", ");
String fname = split[0];
Double q1 = Double.parseDouble (split[1]);
Double q2 = Double.parseDouble (split[2]);
Double q3 = Double.parseDouble (split[3]);
Double q4 = Double.parseDouble (split[4]);
Double proji = Double.parseDouble (split[5]);
Double projii = Double.parseDouble (split[6]);
Double projiii = Double.parseDouble (split[7]);
double studentgrade = (q1 *0.1) + (q2 *0.1) +(q3 *0.1) + (q4 *0.1) +(proji*0.15) + (projii * 0.2) + (projiii *0.25);
if(studentgrade>90)
System.out.printf("%s got an A\n", fname);
else if(studentgrade>80)
System.out.printf("%s got a B\n", fname);
else if(studentgrade>70)
System.out.printf("%s got a C\n", fname);
else if(studentgrade>60)
System.out.printf("%s got a D\n", fname);
else if(studentgrade>50)
System.out.printf("%s got a F\n", fname);
}}}catch(Exception e){
e.printStackTrace();
}
}
public void closeFile(){
x.close();
}
}
Java IO에 대한 자습서를 읽으십시오. –