Visualizzazione dei risultati da 1 a 3 su 3
  1. #1
    Utente di HTML.it
    Registrato dal
    Apr 2015
    Messaggi
    31

    Errore conversione oggetto in ByteArrayOutputStream e viceversa

    Salve a tutti, nel mio programma ho bisogno di creare uno stream di byte a partire da un'istanza di una classe (la classe Data), e poi ricostruire l'oggetto a partire dallo stream. Ho questi due metodi:

    codice:
    public ByteArrayOutputStream dataToStream(Data data) throws IOException{      ByteArrayOutputStream buffer = new ByteArrayOutputStream();
            ObjectOutputStream oos = new ObjectOutputStream(buffer);
            oos.writeObject(data);
            oos.close();
            return buffer;
        }
    
    public Data streamToData(ByteArrayOutputStream baos) throws IOException, ClassNotFoundException{       byte[] rawData = baos.toByteArray();
            
           ByteArrayInputStream bais = new ByteArrayInputStream(rawData);
            ObjectInputStream ois= new ObjectInputStream(bais);
           Data data = (Data) ois.readObject();
            
            ois.close();
            return data;
           
        }
    la classe Data implementa l'interfaccia Serializable, e ha tra gli attributi, oltre a variabili di tipo stringa o double, anche un oggetto (di classe Object, a seconda degli usi del programma può avere tipo diverso).
    Quando provo ad eseguire il programma ricevo come errore:
    Data cannot be cast to ByteArrayOutputStream oppure viceversa ByteArrayOutputStream cannot be cast to Data

    Dove sbaglio? Grazie in anticipo!

  2. #2
    Utente di HTML.it L'avatar di andbin
    Registrato dal
    Jan 2006
    residenza
    Italy
    Messaggi
    18,284
    Quote Originariamente inviata da Naomi92 Visualizza il messaggio
    Data cannot be cast to ByteArrayOutputStream oppure viceversa ByteArrayOutputStream cannot be cast to Data

    Dove sbaglio? Grazie in anticipo!
    A vederli così questi due metodi fanno i vari passi in modo corretto. Mostra come usi questi due metodi ... credo il problema sia altrove, non in questi due metodi.
    Andrea, andbin.devSenior Java developerSCJP 5 (91%) • SCWCD 5 (94%)
    java.util.function Interfaces Cheat SheetJava Versions Cheat Sheet

  3. #3
    Utente di HTML.it
    Registrato dal
    Apr 2015
    Messaggi
    31
    Hai ragione, mi sono poi accorta che c'era un errore durante una chiamata al metodo

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.