मेरे पास एक छवि को बाइट सरणी में बदलने के लिए कोड का नीचे का टुकड़ा है।जावा छवि को बाइट सरणी आकार के मुद्दों में कनवर्ट करें
ByteArrayOutputStream baos = new ByteArrayOutputStream();
ImageIO.write(image, "png", baos);
baos.flush();
byte[] imageBytes = baos.toByteArray();
baos.close();
मुझे जिस मुद्दे का सामना करना पड़ रहा है वह यह है कि छवि का आकार लगभग 2.65 एमबी है। हालांकि, imageBytes.length मुझे 5.5 एमबी से अधिक मूल्य दे रहा है। क्या कोई मुझे बता सकता है कि मैं गलत कहां जा रहा हूं?
आप कैसे जानते हैं कि आकार 2.65MB के आसपास है? क्या आप परिणामस्वरूप बाइट खोल सकते हैं? क्या यह ठीक दिखता है? – Thilo
क्या आप वाकई इनपुट छवि पीएनजी प्रारूप में हैं? – Perception
@ थिलो - छवि मेरी स्थानीय मशीन से अपलोड की गई छवि है। मैंने अपनी स्थानीय मशीन और सर्वर दोनों पर फ़ाइल की जांच की। इसका आकार 2.65 एमबी है। मैं BufferedImage छवि = ImageIO.read (inputFile) का उपयोग कर रहा हूँ; फ़ाइल से छवि ऑब्जेक्ट बनाने के लिए। हां, बाइट [] संग्रहीत आकार के अलावा ठीक दिखता है। –