이미지의 sd 카드 경로가 있습니다. 이제 이미지를 서버에 업로드하려고하기 때문에 이미지를 바이트 배열로 변환하는 다음 단계는 무엇입니까?서버로 이미지를 업로드하기 위해 bytearray로 이미지 변환 Android
미리 감사드립니다.
이미지의 sd 카드 경로가 있습니다. 이제 이미지를 서버에 업로드하려고하기 때문에 이미지를 바이트 배열로 변환하는 다음 단계는 무엇입니까?서버로 이미지를 업로드하기 위해 bytearray로 이미지 변환 Android
미리 감사드립니다.
public static byte[] toByteArray (Bitmap raw) {
byte[] byteArray = null;
try {
ByteArrayOutputStream stream = new ByteArrayOutputStream();
raw.compress (Bitmap.CompressFormat.JPEG, 100, stream);
byteArray = stream.toByteArray();
}
catch (Exception e) {
e.printStackTrace();
}
return byteArray;
}
파일을 비트 맵에 놓은 다음 특정 품질로 jpg로 압축하면 다른 형식과 품질이 낮은 그림이 생성됩니다. 그래서 이것은 질문에 대한 대답이 아닙니다. – greenapps
손실 품질이 아닌 PNG 압축 형식을 사용할 수도 있습니다. 당신이 그걸 알고 있기를 바랍니다. –
예 알아요. 그러나 OP는 그가 PNG를 원한다고 말하지 않았다. 그리고 여전히 비트 맵에 파일을 배치 할 필요가 없습니다. 모든 종류의 변화가 일어날 수 있습니다. 파일을 그대로 업로드하는 것이 훨씬 낫습니다. 바이트의 바이트. 중간 비트 맵을 사용하지 않고 bytearray에 파일을 배치 할 수 있습니다. 그러면 파일의 모든 바이트가 bytearray에 있습니다. 그렇게 할 경우에만 귀하의 게시물이 질문에 대한 답변이 될 것입니다. – greenapps
먼저 bytearray로 변환하지 마십시오. 비트 맵을 사용하여로드하지 마십시오. 그냥 바이트 버퍼에서 읽고 출력 스트림에 루프로 씁니다. – greenapps