Exemplo 01
Iniciando o primeiro exemplo do nosso artigo, estamos criando um novo arquivo Java, “Teste.Java". Depois disso, também geramos um arquivo de texto na mesma pasta.
Para ler objetos do fluxo de entrada em um programa Java, precisamos importar o fluxo de saída. Então, estamos importando o “java.io.ObjectInputStream "e" Java.io.ObjectOutputStream ”os pacotes no início. Junto com isso, para inserir os dados em um arquivo, precisamos importar o “java.io.FileInputStream "e" Java.io.FileInputStream ”. Criamos uma classe "principal" segurando uma única função principal ().
A execução da função começa a partir da declaração de uma variável inteira "d". Para evitar a saída repentina do programa devido a erros, adicionamos a declaração Try-Catch de Java. A parte "Try" começa com a inicialização de um objeto de fluxo de saída de arquivo "F" através da classe FileOutputStream. Passamos o nome do arquivo “Novo.txt "para este objeto" f ". Criamos um fluxo de saída de objeto "O" e passamos o objeto de arquivo "f" para a classe ObjectOutputStream para tornar um arquivo um fluxo de saída.
Na linha seguinte, estamos chamando a função writeInt () do fluxo de saída Java por meio do objeto de fluxo de saída "O" para passar uma variável inteira "D", I I.e., Para salvá -lo em um arquivo. Na linha 12, criamos o fluxo de entrada de arquivos “FS” usando a classe FileInputStream de Java, passando um arquivo “Novo.txt ”, eu.e., já tem dados nele. Este objeto de fluxo de entrada de arquivo “FS” foi passado para o objeto recém -gerado “OS” da classe ObjectInputStream para permitir a leitura do fluxo de arquivos. A função println () do “sistema.OUT "pacote do java foi fundido para chamar a função readint () através do objeto de fluxo de entrada do objeto" OS "para exibir os dados do novo.arquivo txt. Depois disso, fechamos o fluxo de saída e o fluxo de entrada usando seus respectivos objetos "O" e "OS" usando a função "Fechar" do manuseio de arquivos em Java. Esta é uma etapa necessária para fechar os fluxos para que nenhum outro usuário possa inserir ou produzir dados de um arquivo. Na instrução Catch (), estamos usando a função getStackTrace () para obter um erro e exibi -lo na tela através da variável de exceção "e". Este programa está pronto para a execução no shell.
Acabamos de salvar nosso arquivo de código Java antes de sua execução e usamos a instrução de palavra -chave Java para executar o “teste.arquivo java ”. Não retorna nada em troca. Além disso, exibindo os dados de um arquivo de texto “Novo.txt ”no shell usando a instrução“ gato ”exibiu um valor de lixo. Isso ocorre porque, na maioria das vezes, o executor Java não consegue ler o valor inteiro do arquivo. Mas provavelmente, ele exibirá o valor inteiro exato.
Ao verificar o novo.arquivo txt abrindo manualmente, vimos que um formato unicode do valor foi mostrado no arquivo.
Se você não conseguir exibir o valor inteiro do fluxo de arquivos, pode usar a função WriteObject () no programa Java em vez da função writeInt () para escrever o valor "D" no fluxo de arquivos através do objeto "O" conforme exibido. Junto com isso, você precisa eliminar a função "readObject ()" em vez da função readint () para exibir os dados do fluxo de entrada do arquivo.
Atualizar este código exibiria o valor inteiro na execução.
Exemplo 02
Vamos ter outro valor da programação Java para eliminar o fluxo de entrada do objeto para o valor do tipo de string. Assim, iniciamos este código de exemplo com a importação dos mesmos classes FileInputStream, FileOutputStream, ObjectInputStream e ObjectOutputStream de Java do pacote "IO" da biblioteca Java. A classe principal tem sua função principal () para começar a executar este código. Uma variável de string "d2" é inicializada com um valor longo de string.
A mesma instrução Try-Catch foi fundida para evitar o erro e a execução suave deste código Java. O objeto "F" para o fluxo de saída de arquivo foi criado através da classe FileOutputStream, tomando "novo.txt ”como um argumento. O objeto de fluxo de saída de arquivo “F” foi passado para o objeto de fluxo de saída “o” que foi criado pelo uso da classe ObjectPutStream. Agora, o fluxo de saída "O" está chamando a função WriteObject (), passando por uma variável de string "d" a ser escrita no arquivo "Novo.TXT".
Em seguida, criou um fluxo de entrada de arquivo "FS" usando a classe FileInputStream, passando por um nome de arquivo "Novo.txt ”, eu.e., Para ler os dados dele. Agora, o objeto ObjectStream Class Object "OS" estaria usando o objeto de fluxo de entrada de arquivo "FS" para ler os dados usando a função readObject () do Java na instrução "println" do "sistema.fora ”da aula. Em seguida, tendemos a fechar os fluxos de entrada e saída, chamando a função "Fechar", e a declaração de captura é utilizada para fazer com que qualquer exceção tenha acontecido na parte de tentativa e evitar o fechamento repentino desta execução do programa.
A execução deste arquivo de código Java e o arquivo de texto exibiram o valor da string no console.
Conclusão
O uso da classe ObjectInputStream é o único método disponível para leitura de substâncias que usam o protocolo serializável ou externizável. Para resumir, incluímos todos os detalhes necessários para utilizar a classe ObjectInputStream da Java para ler dados do fluxo de entrada do objeto de arquivo. Para isso, estamos lançando dois exemplos diferentes de código Java aqui. O primeiro exemplo utiliza o valor da variável de entrada do tipo inteiro, enquanto a segunda ilustração foi eliminada do valor variável da string, i i.e., Leia a partir do fluxo de arquivos de entrada.