1
你好這是我的代碼從文件中讀取讀取從文件的陣列。 (JAVA)
case 11: {
String line;
String temp[];
System.out.println("Podaj nazwę pliku z jakiego odczytać playlistę.");
nazwa11 = odczyt.next();
try {
FileReader fileReader = new FileReader(nazwa11);
BufferedReader bufferedReader = new BufferedReader(fileReader);
playlists.add(new Playlist(bufferedReader.readLine()));
x++;
while((line = bufferedReader.readLine())!=null){
String delimiter = "|";
temp = line.split(delimiter);
int rok;
rok = Integer.parseInt(temp[2]);
playlists.get(x).dodajUtwor(temp[0], temp[1], rok);
}
bufferedReader.close();
} catch (FileNotFoundException ex) {
System.out.println("Nie znaleziono pliku: '" + nazwa11 + "'");
} catch (IOException ex) {
System.out.println("Error reading file '" + nazwa11 + "'");
}
break;
}
示例文件看起來是這樣的:
Pop
Test|Test|2010
Test1|Test1|2001
給我的錯誤
Exception in thread "main" java.lang.NumberFormatException: For input string: "s"
爲什麼我line.split沒有按發現「|」時不會分裂?我想它分裂了T-E-S,任何提示?
您的分隔符正在作爲正則表達式進行評估,因此您需要跳過管道:'delimiter =「\\ |」;' – azurefrog
謝謝!它的工作原理:) – EyeMaze