마스터Q&A 안드로이드는 안드로이드 개발자들의 질문과 답변을 위한 지식 커뮤니티 사이트입니다. 안드로이드펍에서 운영하고 있습니다. [사용법, 운영진]

ArrayList를 파일로 저장하는 방법

0 추천

package com.newidea.menorywords;

 
import java.util.ArrayList;
 
import android.content.Context;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
import android.widget.BaseAdapter;
import android.widget.TextView;
public class Words_Adapter extends BaseAdapter {
 private ArrayList<Data_words> Data;
 private LayoutInflater inflater;
 
  public Words_Adapter(Context c, ArrayList<Data_words> arr) {
  this.Data = arr;
  inflater = (LayoutInflater)c.getSystemService(Context.LAYOUT_INFLATER_SERVICE);
  }
  public int getCount() {
  return Data.size();
  }
  public Object getItem(int position) {
  return Data.get(position).getwords();
  }
  public long getItemId(int position) {
  return position;
  }
  public View getView(int position, View convertView, ViewGroup parent) {
  if(convertView == null){
  convertView = inflater.inflate(R.layout.list, parent, false);
  }
  TextView word = (TextView)convertView.findViewById(R.id.word1);
  word.setText(Data.get(position).getwords());
 
  TextView mean = (TextView)convertView.findViewById(R.id.means1);
  mean.setText(Data.get(position).getmeans());
 
 
  return convertView;
  }
 
}
이렇게 ListView에 2항목이 보이게 만들었는데 이 항목들을 파일로 어떻게 저장시키나요???
GingerBread (120 포인트) 님이 2013년 2월 27일 질문

1개의 답변

0 추천

ArrayList는 Serializable을 구현했기에 일반적인 데이터만 있다면

바로 ObjectOutputStream을 이용해서 writeObject로 파일 저장하면 됩니다.

불러올 때도 ObjectInputStream을 이용해서 readObject로 불러오면 됩니다.

만약 ArrayList의 아이템으로 객체가 들어있다면 해당 객체도 Serializable을 구현해야 됩니다.

ObjectOutputStream을 이용하면 간단하게 할 수 있구요.

 

아니면 자체적으로 포멧을 만드셔서 직접 파일로 write/read 하시면 됩니다.

원조안드로이드 (58,190 포인트) 님이 2013년 2월 27일 답변
혹시 자세하게 소스를 알려주실수 있으신가요??
제가 초보라 ㅠㅠ
http://www.jabook.com/jabook_original/book_second_novel_java/second_novel_java_html/index.html
여기에서 [9장 java stream -> 9.6 2차 스트림 -> 9.6.6 Object스트림] 참고하세요.
...