Zakładam, że masz na myśli, że „użycie” oznacza czytanie, ale to, co wyjaśnię dla przypadku odczytu, można w zasadzie odwrócić w przypadku zapisu.
więc otrzymujesz bajt []. może to oznaczać dowolny rodzaj danych, które mogą wymagać specjalnych typów konwersji (znakowych, zaszyfrowanych itp.). udawajmy, że chcesz zapisać te dane w pliku.
po pierwsze, możesz utworzyć ByteArrayInputStream, który jest w zasadzie mechanizmem dostarczania bajtów do czegoś w kolejności.
następnie możesz utworzyć FileOutputStream dla pliku, który chcesz utworzyć. istnieje wiele typów InputStreams i OutputStreams dla różnych źródeł danych i miejsc docelowych.
na koniec możesz napisać InputStream do OutputStream. w tym przypadku tablica bajtów zostanie wysłana w kolejności do FileOutputStream w celu zapisu. W tym celu polecam użycie IOUtils
byte[] bytes = ...;
ByteArrayInputStream in = new ByteArrayInputStream(bytes);
FileOutputStream out = new FileOutputStream(new File(...));
IOUtils.copy(in, out);
IOUtils.closeQuietly(in);
IOUtils.closeQuietly(out);
i na odwrót
FileInputStream in = new FileInputStream(new File(...));
ByteArrayOutputStream out = new ByteArrayOutputStream();
IOUtils.copy(in, out);
IOUtils.closeQuietly(in);
IOUtils.closeQuietly(out);
byte[] bytes = out.toByteArray();
jeśli używasz powyższych fragmentów kodu, będziesz musiał obsłużyć wyjątki i zalecam wykonanie `` zamknięć '' w końcowym bloku.