2017-05-09 37 views
-1

我想從文件(某人的業餘愛好者的字符串)中讀取一行,然後將其分配給已在另一個類中啓動的數組(標題爲UserAccount ),其中setHobbies方法包含此。Java - 從文件中讀取字符串,然後轉換爲數組

任何人都可以告訴我我要去哪裏嗎?

謝謝。

+0

可以呈現怎樣的線條看起來像內文件? –

+0

更具體地說明什麼不工作。併發布'UserAccount'的代碼。 –

+0

如果有輸入,while循環將永遠不會結束,因爲您永遠不會推進掃描儀。你需要在循環內部有'input.nextLine()'。 –

回答

0

就我個人而言,當從文件中讀取數據時,我會使用ArrayList來存儲業餘愛好,因爲它可以增長和縮小,這意味着您不必關心使用數組。不過,如果你想繼續和你確定該文件的讀取長度將是相同的內UserAccount實例化數組,那麼你可以這樣做:

Scanner sc = null; 
try { 
    sc = new Scanner(new BufferedReader(new FileReader("example.txt"))); 

    while (sc.hasNextLine()) { 
     ... 
     ... 
     ... 
     String[] hobbies = input.nextLine().split(","); 
     a1.setHobbies(hobbies); 
    } 

} 
catch(FileNotFoundException e){ 
     // handle here 
} 
finally { 
    if (sc != null) { 
     sc.close(); 
    } 
} 
+1

我會建議一個「if(input.hasNextLine())」,而不是「while」 – robermann

相關問題