1
j2me 모바일에서 서버로 이미지를 업로드하는 응용 프로그램을 개발 중입니다. j2me 모바일에서와 마찬가지로 힙 크기가 1MB로 할당되었으므로 이미지를 1MB 이상 업로드하려고 시도하면 OutOfMemory 예외가 발생합니다. j2me 모바일에서이 문제를 처리 할 수있는 방법이 있습니까?j2me에서 크기가 1MB 이상인 이미지를 처리하는 방법
감사합니다.
j2me 모바일에서 서버로 이미지를 업로드하는 응용 프로그램을 개발 중입니다. j2me 모바일에서와 마찬가지로 힙 크기가 1MB로 할당되었으므로 이미지를 1MB 이상 업로드하려고 시도하면 OutOfMemory 예외가 발생합니다. j2me 모바일에서이 문제를 처리 할 수있는 방법이 있습니까?j2me에서 크기가 1MB 이상인 이미지를 처리하는 방법
감사합니다.
업로드하기 전에 전체 이미지를 메모리에로드하려고합니다 (byte[]
사용). 이런 경우에는 피해야합니다. 스트림을 사용하는 것이 좋습니다.
먼저 파일의 경우 InputStream
을 가져오고 서버의 경우 OutputStream
을 가져옵니다. 그런 다음 버퍼를 사용하여 파일 내용을 모두 복사하십시오.
public static final void copy(InputStream from, OutputStream to)
throws IOException
{
byte [] buffer = new byte[1024];
int count = from.read(buffer);
while (count > 0) {
to.write(buffer, 0, count);
count = from.read(buffer);
}
to.flush();
}
답장을 보내 주셔서 감사합니다 ..... 위와 같이 같은 방식으로 이미지를 업로드하고 있습니다. 시도했을 때 문제가 발생합니다. 1 MB 크기의 이미지를 입력 스트림을 만들려면 ... 다음 메모리 예외가 ....이 모든 솔루션을 던졌습니다. – mark
inputStream을 여는 방법은 무엇입니까? Class.getResourceAsStream 또는 Connector.open? –
InputStream inputStream = fileConnection.openInputStream(); 이렇게하면 입력 스트림이 열립니다. – mark