Java ObjectOutputStream

Java ObjectOutputStream
La programmazione Java è un linguaggio orientato agli oggetti e funziona solo con gli oggetti. Il linguaggio di programmazione Java supporta l'uso di un flusso che contiene gli oggetti che detengono molte funzioni di input e output per visualizzare i risultati necessari. Una di quelle classi di flusso è la classe OBJECCTUTPUTSTREAM di Java che consente di scrivere i dati in un flusso di output come file, ecc. Per leggere i dati dal flusso di output, Java ObjectOutputStream dipende dalla classe ObjectInputStream; Entrambi funzionano contemporaneamente. Questo articolo di guida sarà una fonte per fornire conoscenza di ObjectOutputStream insieme a ObjectInputStream.

Installa e configura Java

Prima di eseguire l'esempio Java per l'illustrazione di un ObjectOutputStream, è necessario assicurarsi che l'ambiente Java sia già impostato e configurato nel sistema Linux, poiché utilizziamo Ubuntu 20.04 Sistema operativo Linux per l'implementazione di questo articolo. Pertanto, è necessario installare l'ultima versione di OpenJDK predefinito (JAVA Development Kit) o ​​predefinito JRE (Java Runtime Environment) sul tuo computer utilizzando il pacchetto APT del sistema Linux. Per questo, avvia rapidamente l'applicazione della console di Linux lanciando una scorciatoia CTRL+ALT+T. Successivamente, eseguire rapidamente le prime istruzioni elencate sull'applicazione della console per impostare OpenJDK. Eseguire la seconda istruzione elencata per impostare il JRE predefinito sul sistema.

  • SUDO APT Installa Default-JDK
  • SUDO APT Installa Default-Jre

Esempio

Facciamo il nostro primo esempio di Java usando il modo più semplice per elaborare l'uso del pacchetto ObjectOutputStream. All'interno di questo esempio, ne discuteremo in dettaglio. Pertanto, utilizziamo il file Java chiamato "Test.Java "nell'editor di testo con il codice mostrato nell'immagine allegata. Avriamo questo script con l'importazione di tutte le sotto-class o strutture dal Java.Pacchetto io di java tramite il personaggio "*". Questo per recuperare tutti i flussi di input e output e utilizzarli nel codice.

Dopo questo, abbiamo eliminato la classe definita dall'utente "test" di tipo pubblico, è possibile accedere ovunque nel codice. La classe di test ha una singola funzione in essa, io.e. la funzione di esecuzione principale (). L'esecuzione della nostra funzione principale () inizia con l'inizializzazione di una variabile "S1", i.e. Variabile stringa. Contiene un valore di stringa in esso. Dopo questo, ha luogo l'inizializzazione di un array di tipo byte. Ognuno dei suoi indici contiene un valore di singolo carattere. Utilizziamo l'istruzione Try-Catch per scrivere i dati in un flusso di file di output e leggiamo i dati utilizzando il flusso di file di input. Utilizziamo la classe "FileOutputStream" per creare un oggetto "sistema operativo" per il flusso di file nella parte di prova dell'istruzione. Passiamo un nome file di testo "nuovo.txt "nei suoi parametri per creare un file outputstream per scrivere i dati nel file. FileOutputStream dipende da ObjectOutputStream. Pertanto, chiamiamo la classe ObjectOutputStream per creare il suo oggetto "OOS" passandolo un "sistema operativo" FileObjectStream. ObjectOutputStream "OOS" viene utilizzato qui per scrivere la stringa "S1" e l'array di byte "A" a un file nuovo.txt tramite il "sistema operativo" FileOutputStream chiamando la funzione WriteObject ().

Passiamo entrambe le variabili di dati separatamente alla funzione WriteObject () per scrivere i dati in un flusso di file. Dopo aver scritto correttamente i dati in un flusso di file utilizzando ObjectOutputStream, è tempo di creare un ObjectInputStream per leggere i dati dal flusso di file. Per questo, dobbiamo definire FileInputStream. Utilizziamo qui la classe FileInputStream per creare l'oggetto flusso "FS" passandolo da un nome di file da leggere. Questo fileInputStream "FS" viene utilizzato per generare un "OIS" di ObjectInputStream utilizzando la classe ObjectInputStream del linguaggio Java per leggere correttamente le informazioni da un file. ObjectInputStream "OIS" viene utilizzato nell'istruzione funzione println () del "sistema.pacchetto out "per chiamare la funzione ReadObject () per leggere i dati della variabile String da FileOutputStream.

Per salvare i dati in un array di tipo byte "R", utilizziamo lo stesso flusso di input "OIS" per chiamare la funzione ReadObject () per leggere i dati dal flusso di file. Dopo questo, chiamiamo il costruttore della classe String usando la variabile S2 e la passiamo un array di byte "R". Il costruttore converte l'array di byte in una normale variabile di stringa e ritorna alla variabile S2. Quindi, utilizziamo la variabile S2 in una funzione di println () di un sistema.fuori un pacchetto per visualizzare il valore convertito. Alla fine, utilizziamo l'istruzione Catch per ottenere qualsiasi errore che si verifica in una parte di prova e la stampa sulla shell.

Il codice precedente è completato ed è pronto per l'uso. Pertanto, proviamo la query di esecuzione Java con il nome di un file di codice Java “Test.Java "per eseguirlo. All'esecuzione del codice Java, siamo mostrati con il seguente risultato che contiene due valori di stringa su righe separate. Puoi vedere che il valore dell'array di byte viene convertito in una stringa correttamente tramite l'uso del costruttore di classe String (). Quando proviamo l'istruzione CAT per visualizzare i dati da un nuovo.file txt (flusso di file di output), mostra i dati di stringa salvati secondo l'uso di ObjectOutputputStream.

Conclusione

A partire dall'introduzione alla fine di questo articolo, abbiamo discusso tutto sull'uso della classe ObjectUpputStream di Java. L'introduzione ha fornito una chiara differenza tra ObjectInputStream e ObjectOutputStream. Successivamente, abbiamo discusso del metodo per impostare l'ambiente Java nel nostro Ubuntu 20.04 Sistema operativo Linux eliminando le semplici istruzioni APT. Questo articolo contiene un breve esempio Java che dimostra l'uso di ObjectOutputStream in Java per scrivere i dati in un flusso di file.