2014-02-08 38 views
1

我正在使用getter方法將ArrayList返回到我的主要方法。然後我將這些列表保存爲文本文件。我的問題是在輸出顯示將ArrayList作爲文本文件中的列表寫入

的方式有沒有辦法救我的數組列表以這種方式

如:

12   
45   
56    
34    
65 

而不是

[12, 45, 56, 34, 65] 

我正在使用PrintStream,並且正在輸出到文本文件。

問候

編輯

for(Subject sub : st.getSub()){ 
     save.println(s.getSubject()); 
     save.println(s.getHomeworkMark()); 
     save.println(s.getExamMark()); 
     } 

我有一些liike說,但由於使用im getter方法,它沒有讓我通過每個記錄循環....茨艾倫從檢索的ArrayList ,但是當我輸出時,它輸出的是整體而不是個人

回答

1

您是否嘗試過使用PrintStream的println()方法?

public static void main(String[] args) { 

    // Making an ArrayList 
    ArrayList yourArrayHere = new ArrayList(); 

    // Adding your numbers 
    yourArrayHere.add(12); 
    yourArrayHere.add(45); 
    yourArrayHere.add(56); 
    yourArrayHere.add(34); 
    yourArrayHere.add(65); 

    // Creating a PrintStream object 
    PrintStream ps = null; 

    try { 
     ps = new PrintStream("C:\\yourFile.txt"); 
    } catch (FileNotFoundException e) { 
     e.printStackTrace(); 
    } 

    //Going through each object and writing it to file 
    for (int i = 0; i < yourArrayHere.size(); i++) { 
     ps.println(yourArrayHere.get(i)); 

    } 

} 

如果沒有幫助,請通過編輯你的問題,所以我可以有一個細看分享您的代碼。

我的結果yourFile.txt,位於C:

12 
45 
56 
34 
65 
+0

我將我的代碼添加到了帖子 – user3029345

+0

@ user3029345所以get方法返回ArrayLists?如果是這樣,也許我們可以編輯getters?張貼他們,我會看着他們,如果你想。 – ViRALiC

+0

public Vector getHomeworkMark(){ return homeworkMark; } – user3029345

1

你能做到在一個行,如果你想:

List<Integer> list; // assuming this 

printStream.print(list.toString().replaceAll("^.|.$", "").replace(", ", "\n")); 
+0

+1:比遍歷列表更好的解決方案 – wisemann

0

通過使一個臨時變量解決了這個...