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

텍스트 파일 읽어 오는데 특정 위치에서 자꾸 에러가 납니다.

0 추천

그냥 텍스트 파일 읽어와서 그 내용을 한줄씩 넘기는 형식으로 아래처럼 했습니다.

BufferedReader buffer;
InputStream txtFile;
txtFile = getResources().openRawResource(R.raw.txtfile);
try{
	buffer = new BufferedReader(new InputStreamReader(txtFile,"UTF-8"));
}catch(UnsupportedEncodingException e){
	e.printStackTrace();
}

public void read(){
	try{
		String s = buffer.readLine();
		if(s!=null){
			putLine(s);//읽은 내용 넘기기
		}else{
			buffer.close();
			txtFile.close();
		}
	}catch(IOException e){
		e.printStackTrace();
	}
}

그런데 텍스트파일이 워낙 길어서 쭈욱 읽다가 꼭 765줄 째만 되면 에러가 나서 끝나버립니다.

에러 내용은 아래와 같습니다.

E/CursorWindow(9088): Could not allocate CursorWindow '/data/data/com.example.txt/databases/webview.db' of size 2097152 due to error -12.
 

android.database.CursorWindowAllocationException: Cursor window allocation of 2048 kb failed. # Open Cursors=765 (# cursors opened by this proc=765)

왜 저 줄에서만 에러가 나는 걸까요?

태시깅 (280 포인트) 님이 2013년 7월 29일 질문

1개의 답변

0 추천
메모리 부족 오류 입니다.
Elex (9,090 포인트) 님이 2013년 7월 30일 답변
...