簡體   English   中英

Java 掃描器類將數據文件中的多個 int 值存儲到數組中

[英]Java scanner class storing multiple int values from datafile into an array

我正在嘗試創建以下方法來讀取“studentmarks.txt”文件。 但是,我無法讓學生標記被讀取為 int(例如 65 60 52)並存儲到數組中。 它不斷輸出錯誤“java.util.InputMismatchException null”。 我如何在不改變“studentmarks.txt”文件格式的情況下解決這個問題? 謝謝!

public void readMarksData(String fileName) throws FileNotFoundException
{


    File dataFile = new File(fileName);
    Scanner scanner = new Scanner(dataFile);

    String nameOfCohort = scanner.nextLine(); //1
    System.out.println(nameOfCohort);

    int noOfMarks = scanner.nextInt();  //2
    System.out.println(noOfMarks);

    scanner.nextLine();
    while( scanner.hasNext() )
    {

       scanner.useDelimiter("[,\n]");
       String name = scanner.next();      //3
       System.out.println(name);



         //            int marks[] = new int[3];
         //            for(int i = 0 ; i <= 3 ; i++)
         //            {
         //               marks[i] = scanner.nextInt();
         //            }

       int marks[] = new int[100];

       int markOne = scanner.nextInt();  //4 java.util.InputMismatchException null
       marks = new int[markOne];
       System.out.println(markOne);
       scanner.nextLine();



       int markTwo = scanner.nextInt();      //5
       marks = new int[markTwo];
       scanner.nextLine();

       int markThree = scanner.nextInt();      //6
       marks = new int[markThree];
       scanner.nextLine();
       //              
       //System.out.println(markOne + " " + markTwo + " " + markThree);

    }
    scanner.close();
}

學生標記.txt:

CS1 Group 2
3
Andreas Antoniades
65 85 77
Charlotte Brocklebank
87 93 81
suzanne dawson
0 55 42

學生記錄類:

public class StudentRecord
{

   private String name;
   private String noOfMarks; 
   private int[] marks;

   public StudentRecord(String name)
   {
     marks = new int[24];
     this.name = name;  
   }
int result = Integer.parseInt(number);

您可以使用parseInt(String val)方法將 65 的字符串值解析為整數值並將其存儲在數組中

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM