在下面的代碼中,我試圖將兩行中分別稱爲「Opgave1.txt」的文本文件的每一行分開。第一個單詞是「oplossingWoord」,該行的其餘部分排列在「beschrijving」陣列中。代碼的那部分起作用。Try/catch不會運行完整代碼
但我希望將數組「oplossingWoord」轉換爲字符數組列表「oplossingLettersLijst」的第二部分不運行。我不知道爲什麼。最後,我也試着去解決它們,但輸出只是保持空白。希望你們能幫助我。
在此先感謝!
代碼:
public class LetterPyramide {
public static String[] oplossingWoord = new String[8];
public static String[] beschrijving = new String[8];
public static List<Character> oplossingLettersLijst = new ArrayList<Character>();
public static String OpgaveKeuze;
public LetterPyramide() {
try {
File OPGAVEN_FILE = new File("Opgave1.txt");
int oplossingLettersIndex = 0;
Scanner s1 = new Scanner(OPGAVEN_FILE);
for (int i = 0; i < 8; i++) {
String[] line = s1.nextLine().split("\\s+");
oplossingWoord[i] = line[0];
if (line.length > 2) {
for (int j = 1; j < line.length; j++) {
String oudeWaarde = line[1];
beschrijving[i] = oudeWaarde + " " + line[j];
}
} else {
beschrijving[i] = line[1];
}
}
for (int i = 0; i < oplossingWoord.length; i++) {
for (int j = 0; j < oplossingWoord[i].length(); j++) {
oplossingLettersLijst.add(oplossingLettersIndex, oplossingWoord[i].charAt(j));
}
}
System.out.println("------------Beschrijving------------");
for (int i = 0; i < beschrijving.length; i++) {
System.out.println(i + "." + beschrijving[i]);
}
System.out.println("----------Oplossingen---------------");
for (int i = 0; i < oplossingWoord.length; i++) {
System.out.println("woord " + i + ": " + oplossingWoord[i]);
for (int j = 0; j < oplossingLettersLijst.size(); j++) {
System.out.print(oplossingLettersLijst.get(j));
}
}
} catch (Exception e) {
}
}
文本文件:
LA Opbergplaats
BAL Speelgoed
BALE Voetballer
BLASE Dikkenekkerig
LOEBAS Boerenkinkel
SLABOER Groentenkweker
BROLSATE Slecht vlees op een stokj
編輯:修正了這一切多虧了堆棧跟蹤。感謝你們!
在你的catch .....添加一個stacktrace ...你爲什麼要把它留空? – logger
爲什麼你甚至有代碼中的try/catch? – Andreas
@ user3659052我補充說。糟糕的解釋了很多。現在,我得到了以下錯誤: java.util.NoSuchElementException:沒有找到行 \t在java.util.Scanner.nextLine(Scanner.java:1540) \t在be.kdg.letterpyramide.model.LetterPyramide。(LetterPyramide.java:24)。 \t 我是關於這一行的:String [] line = s1.nextLine()。split(「\\ s +」); 它有什麼問題? –
CaptainAargh