現在、学生の名前とテストの点数を保存するテキスト ファイルがあります。ファイルの形式は、姓、名、およびテストのスコアです。テキスト ファイル内の各値はスペースで区切られています。したがって、ファイルは次のようになります。
Smith John 85
Swan Emma 75
すべてのデータをコンソールに出力するようにコードを実行していますが、すべてのテスト スコアを取得して合計し、平均を見つけてコンソールに出力することはできません。 . 同様に、スコアが平均より 10 低い学生を出力します。
現在、これは情報を読み取ってコンソールに出力するために使用しているコードです。
public class ReadTXT
{
public static void main(String[] args)
{
{
String txtFile = "/Users/Amanda/Desktop/Studentdata.txt";
BufferedReader br = null;
String line = "";
String txtSplitBy = " ";
try {
br = new BufferedReader(new FileReader(txtFile));
while ((line = br.readLine()) != null) {
String[] LastName= line.split(txtSplitBy);
String[] FirstName = line.split(txtSplitBy);
String[] TS = line.split(txtSplitBy);
System.out.println("Last Name: " + LastName[0]
+ "\n" +"First Name: " + FirstName[1] + "\n" +
"Test Score: " + TS [2] + "\n") ;
{
double average = sum / i;
}
}
} catch (FileNotFoundException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
} finally {
if (br != null) {
try {
br.close();
} catch (IOException e) {
e.printStackTrace();
}
}
}
System.out.println("Done");
}
}
}
そして、これは私が平均を見つけるために使用しようとしていたコードです。
int i =Integer.parseInt ("TS");
double sum = 0.0;
for (int x = 0; x < i; sum += i++);
{
double average = sum / i;
}
ただし、この例外が引き続き発生します。
Exception in thread "main" java.lang.NumberFormatException: For input string: "TS"
at java.lang.NumberFormatException.forInputString(NumberFormatException.java:65)
at java.lang.Integer.parseInt(Integer.java:492)
at java.lang.Integer.parseInt(Integer.java:527)
at ReadTXT.main(ReadTXT.java:35)
私はJavaを学ぶのは初めてですが、試しています。