2015-10-26 133 views
0

我想从文本文件读取数据并将输出打印到终端和文本文件。我有一个读取数字的循环,一个读取非数字字符的循环,但没有任何内容输出到终端。我是编程新手。 顺便说一下,我正在将一个旧项目转变为一个新项目。从文本文件读取数据打印到终端和新文本文件

package studenttester; 


public class Student 
{ 
    private String name; 
    double quizScore; 
    double quizAverage; 
    private int numQuizzes; 
    String grade; 


    /** 
* Returns the name of a student 
* 
* @return the name of the student 
*/ 
    public Student (String inName) 
    { 
      name = inName; 
      quizAverage = 0; 
      quizScore = 0; 
      numQuizzes = 0; 
    } 
    public String getName() 

    { 
     return name; 
    } 

/** 
* Adds a quiz score to the total quiz score of the student 
* 
* @param score the score of a quiz  
*/ 
     void addQuiz(int score) 
    { 

     numQuizzes += 1; 
     quizScore += score; 

    } 

/** 
* Returns the total score of all the quizzes combined that student took 
* 
* @return the value of score 
*/ 


    double getTotalScore() 
    { 

     return quizScore; 

    } 


/** 
* Returns the average score of all the quizzes a student took 
* 
* @return 
*/ 
    double getAverageScore() 
    { 

     return quizScore/numQuizzes; 

    } 
} 


package studenttester; 


import java.io.*; 
import java.util.Scanner; 



public class StudentTester { 


public static void main(String[] args) throws FileNotFoundException 
{ 

    System.out.println("Student Name   Number of Quizzes      Average"); 

    Scanner reader = new Scanner(new File("quizScores.txt")); 

    String studentName = "", first="", last=""; 
while (!reader.hasNext("-10")) 
{ 

} 
while (reader.hasNextDouble()) 
{ 
     first = first+reader.next(); 
     studentName = last + first; 
} 

Student newStudent = new Student(studentName); 

while (reader.hasNextDouble() && !reader.hasNext("-10")) 
    { 
    System.out.printf(""); 
    } 

{ 
      // writer.close; 
} 


} 
    } 

回答

0

“红色下划线”表示编译器错误,我想。 看看你的while循环,这似乎是错误的。 试试...

while (reader.hasNextDouble() && (!reader.hasNext("-10"))) 
    System.out.printf(""); 
} 
reader.close(); 

改为。

+0

我真的结束了自己找出一个。谢谢!我仍然不确定System.out.printf(“”);的含义。我试图列出学生的姓名和他们参加测验的次数以及他们的平均测验。 –