में कैसे परिवर्तित कर सकता हूं मैं बाइट्स की एक सरणी को ज़िप फ़ाइल में परिवर्तित करने की कोशिश कर रहा हूं। यह कैसे किया जा सकता है -मैं बाइट सरणी को ज़िप फ़ाइल
byte[] originalContentBytes= new Verification().readBytesFromAFile(new File("E://file.zip"));
private byte[] readBytesFromAFile(File file) {
int start = 0;
int length = 1024;
int offset = -1;
byte[] buffer = new byte[length];
try {
//convert the file content into a byte array
FileInputStream fileInuptStream = new FileInputStream(file);
BufferedInputStream bufferedInputStream = new BufferedInputStream(
fileInuptStream);
ByteArrayOutputStream byteArrayOutputStream = new ByteArrayOutputStream();
while ((offset = bufferedInputStream.read(buffer, start, length)) != -1) {
byteArrayOutputStream.write(buffer, start, offset);
}
bufferedInputStream.close();
byteArrayOutputStream.flush();
buffer = byteArrayOutputStream.toByteArray();
byteArrayOutputStream.close();
} catch (FileNotFoundException fileNotFoundException) {
fileNotFoundException.printStackTrace();
} catch (IOException ioException) {
ioException.printStackTrace();
}
return buffer;
}
लेकिन मेरी समस्या अब बाइट सरणी ज़िप फ़ाइल में वापस परिवर्तित करने के साथ है: मैं निम्नलिखित कोड का उपयोग कर बाइट्स मिल गया?
नोट: निर्दिष्ट ज़िप में दो फाइलें हैं।
आप वास्तव में क्या चाहते हैं? क्या आप बाइट्स को डिस्क पर वापस ज़िप फ़ाइल में लिखना चाहते हैं? या आप सामग्री को पढ़ना चाहते हैं? बाइट्स आप उन्हें कैसे पढ़ते हैं अभी तक डीकोड नहीं किए गए हैं। – morja
@ morja -> हाँ मैं बाइट्स को ज़िप फ़ाइल के रूप में डिस्क पर वापस लिखना चाहता हूं। – Mohan
खैर, लेकिन फिर बस एक फ़ाइलऑटपुटस्ट्रीम के साथ डिस्क पर बाइट्स लिखें और फ़ाइल .zip नाम दें। क्या आप निकाली गई फाइलें लिखना नहीं चाहते हैं? – morja