-2
我試圖從文件的內容創建一個Java String []。閱讀文本文件的問題 - java.lang.StringIndexOutOfBoundsException
的代碼是:
private String[] arr;
private List<String> list = new ArrayList<String>();
public String[] readfile (String fileName) {
try {
br = new BufferedReader(new FileReader(fileName));
while((str = br.readLine()) != null){
list.add(str);
}
arr = list.toArray(new String[list.size()]);
} catch (IOException e) {
e.printStackTrace();
} finally {
try {
if (br != null){
br.close();
}
} catch (IOException e2) {
e2.printStackTrace();
}
}
return arr;
}
功能顯然作品。實際上,變量arr包含文件的內容。
但是,在此行之後,arr = list.toArray(new String[list.size()]);
函數不返回arr
。我得到java.lang.StringIndexOutOfBoundsException: String index out of range: 0
可能是什麼問題?
你能檢查一下'list.size()'返回的是什麼數字嗎? – wtsang02
我不認爲這是你提供的引起這個異常的代碼。你能提供整個堆棧跟蹤嗎? –
@ wtsang02如果名單是什麼大小,那麼它的大小並不重要。如果給定的數組很小以適應列表,'toArray()'方法創建一個新數組。 –