我試圖做一個程序,從文件中隨機獲取一行,我已經完成了我的代碼,但我得到了奇怪的結果,例如,如果我得到行0它說「空」相同第6,第7,第8,第9 ......但當我得到第5號時,我得到最後一行(粉紅色),當我得到第4號時,我得到第7行(布朗),第2行第3行(海軍)等等。我的文件 「archivo.txt」 有10行是這樣的:Math.random和FileReader
- 紅
- 橙色
- 藍
- 海軍
- 石灰
- 綠色
- 橄欖
- 布朗
- 黃色
- 粉紅
這是我的代碼:
public static String getLinea(){
File archivo = null;
FileReader fr = null;
BufferedReader br = null;
String linea = null;
int numeroRandom = (int)(Math.random() * 10);
System.out.println(numeroRandom);
try{
archivo = new File("C:\\archivo.txt");
fr = new FileReader (archivo);
br = new BufferedReader(fr);
for(int i = 0; i < numeroRandom; i++){
br.readLine();
linea = br.readLine();
}
}
catch(Exception e){
e.printStackTrace();
}finally{
try{
if(null != fr){
fr.close();
}
}catch(Exception e2){
e2.printStackTrace();
}
}
return linea;
}
public static void main(String[] args){
String linea;
linea = getLinea();
System.out.println(linea);
}
嗯,我複製粘貼的代碼,我沒有意識到這一點,謝謝! –
@ user3313820很高興爲您效勞。您可以將答案標記爲已接受並關閉該問題是否有效 – Kakarot