2014-10-05 57 views
0

我有一個多維ArrayList,由不同長度的多行組成。我想將ArrayList保存爲具有多列的單個製表符分隔文件,其中每列對應於ArrayList的特定行。我試圖想出一個解決方案,但我唯一能想到的是將每個ArrayList行保存在單獨的文件中。保存多維數組列表

ArrayList被稱爲「數組」,它包含幾行不同長度的行。這裏是代碼:

try { 
     PrintWriter output = new PrintWriter(new FileWriter("try")); 
     output.print(array.get(0)); 
    } catch (IOException e) { 
      // TODO Auto-generated catch block 
      e.printStackTrace(); 
     } 
    } 

在這種情況下,我可以將ArrayList的第一行保存爲單個文件。我一直在想的另一個解決方案是遍歷行,以獲得與行號一樣多的單獨文件。但是,我想要獲得帶有多個製表符分隔列的單個文件。

回答

0

Ecxuse me,我的舊回答是基於你的需求的錯誤解釋。 我讓你的示例代碼:

package com.test; 

import java.util.ArrayList; 
import java.util.List; 

public class MulitArrayList { 

    public static void main(String[] args) { 
     List<String> innerArrayList1; 
     List<String> innerArrayList2; 
     List<String> innerArrayList3; 
     List<List> outerArrayList; 

     innerArrayList1 = new ArrayList<String>(); 
     innerArrayList2 = new ArrayList<String>(); 
     innerArrayList3 = new ArrayList<String>(); 

     //comic heros 
     innerArrayList1.add("superman"); 
     innerArrayList1.add("batman"); 
     innerArrayList1.add("catwoman"); 
     innerArrayList1.add("spiderman"); 
     //historical persons 
     innerArrayList2.add("Stalin"); 
     innerArrayList2.add("Gandy"); 
     innerArrayList2.add("Lincoln"); 
     innerArrayList2.add("Churchill"); 
     //fast food 
     innerArrayList3.add("mc donalds"); 
     innerArrayList3.add("burger king"); 
     innerArrayList3.add("subway"); 
     innerArrayList3.add("KFC"); 

     //fill outerArrayList 
     outerArrayList = new ArrayList<List>(); 
     outerArrayList.add(innerArrayList1); 
     outerArrayList.add(innerArrayList2); 
     outerArrayList.add(innerArrayList3); 

     //print 
     for(List<String> innerList : outerArrayList) { 
      for(String s : innerList) { 
       System.out.print(s + "\t"); 
      } 
      System.out.println("\n"); 
     } 

    } 

} 

結果是: result of my mulitarray print

正如你可以看到,結果都印有標籤,但它們之間的空間區分。你可以用同樣的方式將它寫入你的文件,但這不是保存數據的最佳方式。我希望我能幫你點點,問候。

+0

謝謝你的回覆。我試圖使用你的代碼,但它不起作用。我得到的最終文件只包含ArrayList的一行。我想問題是我有一個多維ArrayList(Arraylists的ArrayList)。 – sandrus 2014-10-06 09:49:25

+0

沒有我的壞,我雖然是一維數組列表,但正如你所說,你是一個二維數組列表。 – JeromeC 2014-10-06 15:05:48