簡體   English   中英

java.util.NoSuchElementException錯誤不知道如何修復

[英]java.util.NoSuchElementException error don't know how to fix

我試圖將包含整數表的文件讀入一個13×17的2D數組,但是我得到一個NoSuchElementException錯誤,我不知道如何修復。 有關我正在做的家庭作業的更多背景,請單擊鏈接: https//introcs.cs.princeton.edu/java/assignments/mozart.html

96   22  141   41  105  122   11   30   70  121   26    9  112   49  109   14
32    6  128   63  146   46  134   81  117   39  126   56  174   18  116   83
69   95  158   13  153   55  110   24   66  139   15  132   73   58  145   79
40   17  113   85  161    2  159  100   90  176    7   34   67  160   52  170
148   74  163   45   80   97   36  107   25  143   64  125   76  136    1   93
104  157   27  167  154   68  118   91  138   71  150   29  101  162   23  151
152   60  171   53   99  133   21  127   16  155   57  175   43  168   89  172
119   84  114   50  140   86  169   94  120   88   48  166   51  115   72  111
98  142   42  156   75  129   62  123   65   77   19   82  137   38  149    8
3   87  165   61  135   47  147   33  102    4   31  164  144   59  173   78
54  130   10  103   28   37  106    5   35   20  108   92   12  124   44  131

import java.io.File;
import java.io.FileNotFoundException;
import java.util.*;

public class Waltz {
    private static int minuetROWS = 13;
    private static int trioROWS = 7;
    private static int COLS = 17;

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

        File file = new File("C:\\Users\\Brandizzy\\Downloads\\minuet.txt"); // Creates file object to read file.
        //Scanner sc = new Scanner(file);
        Waltz a = new Waltz(); // Creates an instance of the class.
        String[][] minuet = a.getMinuet(file); // Calls the method getMinuet takes txt file in "file".
        System.out.println(Arrays.toString(minuet));

    }
    /* This method takes the txt file "minuet.txt" as a parameter and stores the
    file information into a 2D array called minuet.*/
    public String[][] getMinuet(File file) throws FileNotFoundException{
        Scanner sc = new Scanner(file);
        String[][] minuet = new String[minuetROWS][COLS];
        while(sc.hasNext()){
            Scanner sc1 = new Scanner(file);
            for(int i = 0; i< minuet.length; i++){
                for(int j = 0; j < COLS;j ++){
                    String[] line = sc1.nextLine().trim().split(" ");
                    minuet[i][j] = line[j];
                }
                sc1.close();
            }
            sc.close();
            }
        return minuet;
    }

}

你好,祝你的功課好運。 由於這是一項任務,我會嘗試給你一個提示,而不是一個完整的答案。

你會從javadoc中注意到, Scanner#nextLine()是你的例子中唯一可以拋出NoSuchElementException 您可能想知道是否可以找出為什么您的nextLine()調用得出結論,沒有下一行要前進。

暫無
暫無

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

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