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

java.nio.BufferOverflowException

0 추천
ByteBuffer buf = ByteBuffer.allocate(sizeInt);
		Log.e("전체크기2",""+sizeInt);
		for(int i=0; i<savePrice.length; i++)
		{
			if(i==0)
			{
				for(int j=4; j<16; j++)
				{
					buf.put(savePrice[i][j]);
				}
			}
			else if(i==savePrice.length-1)
			{
				for(int j=2; j<16; j++)
				{
					if(savePrice[i][j]==(byte)0x80)
					{
						Log.e("같음!","break!");
						break;
					}
					else
					{
						buf.put(savePrice[i][j]);
					}
				}
			}
			else
			{
				for(int j=2; j<16; j++)
				{
					buf.put(savePrice[i][j]);
				}
			}
		}//for문

특정 갯수(sizeInt)만큼 bytebuffer 크기를 지정하고, 

2차원배열 savePrice에 있는 값을 특정범위만 지정해서 buffer에 넣는 작업을 하고있습니다.

간혹 java.nio.BufferOverflowException 과 같은 오류가 뜨면서 결과값이 출력되지 않습니다.

정상적으로 값이 다 들어간 경우엔 break로 for문을 빠져나오고, 제대로 값이 출력되는데요.

10번에 1,2번 정도 이 오류가 뜹니다. overflow라고 하는거보니 용량제한쪽 오류인거같은데,

자세히 아시는 분 있으신가요? 긴 글 읽어주셔서 감사합니다^^

망고사탕 (5,000 포인트) 님이 2016년 2월 23일 질문

답변 달기

· 글에 소스 코드 보기 좋게 넣는 법
· 질문에 대해 추가적인 질문이나 의견이 있으면 답변이 아니라 댓글로 달아주시기 바랍니다.
표시할 이름 (옵션):
개인정보: 당신의 이메일은 이 알림을 보내는데만 사용됩니다.
스팸 차단 검사:
스팸 검사를 다시 받지 않으려면 로그인하거나 혹은 가입 하세요.
...