2015-10-26 177 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(「」);的含義。我試圖列出學生的姓名和他們參加測驗的次數以及他們的平均測驗。 –