2014-02-06 3 views
0

Я хочу сохранить содержимое моего arraylist в текстовый файл. То, что я до сих пор показано ниже, вместо добавления x.format («% s% s», «100», «control1»); в текстовый файл, я хочу добавить объекты из arraylist, как мне это сделать?ArrayList сохранен в текстовом файле

import java.util.*; 

public class createfile 
{ 
    ArrayList<String> control = new ArrayList<String>(); 

    private Formatter x; 

    public void openFile() 
    { 
     try { 
      x = new Formatter("ControlLog.txt"); 
     } catch (Exception e) { 
      JOptionPane.showMessageDialog(null, "Error: Your file has not been created"); 
     } 
    } 

    public void addRecords() 
    { 
     x.format("%s%s", "100", "control1"); 
    } 

    public void closeFile() 
    { 
     x.close(); 
    } 
} 

public class complete 
{ 
    public static void main(String[] args) 
    { 
     createfile g = new createfile(); 
     g.openFile(); 
     g.addRecords(); 
     g.closeFile(); 
    } 
} 
+0

Я думаю, вам нужно сначала создать ArrayList. Затем вы будете перебирать элементы ArrayList (возможно, используя блок for), и для каждого элемента вы отформатируете его и напечатаете эту форматированную строку в файл-сценарии. – Leo

+0

Могу ли я спросить, для чего это? –

+0

Да, я создал массивList, как показано выше. Элементы зависят от пользовательского ввода, поэтому, очевидно, я не могу добавить это в настоящее время. Я просто хочу знать, как написать arrayList в текстовый файл. – user3078649

ответ

0

Оба ArrayList и Строка реализации Serializable. Поскольку у вас есть ArrayList строки вы можете записать его в файл, как это:

FileOutputStream fos = new FileOutputStream("path/to/file"); 
ObjectOutputStream out = new ObjectOutputStream(fos); 
out.writeObject(myArrayList); //Where my array list is the one you created 
out.close(); 

Here это действительно хороший учебник, который показывает вам, как писать объекты Java в файл.

Письменные объекты могут быть считаны из файла аналогичным образом.

FileInputStream in = new FileInputStream("path/to/file"); 
ObjectInputStream is = new ObjectInputStream(in); 
myArrayList = (ArrayList<String>) is.readObject(); //Note that you will get an unchecked warning here 
is.close() 

Here учебник о том, как читать объекты обратно из файла.

Смежные вопросы