Java - DataOutputStream
O fluxo DataOutputStream permite gravar os primitivos em uma fonte de saída.
A seguir está o construtor para criar um DataOutputStream.
DataOutputStream out = DataOutputStream(OutputStream out);
Depois de ter o objeto DataOutputStream em mãos, há uma lista de métodos auxiliares, que podem ser usados para escrever o fluxo ou para fazer outras operações no fluxo.
Sr. Não. | Método e Descrição |
---|---|
1 | public final void write(byte[] w, int off, int len)throws IOException Grava len bytes da matriz de bytes especificada começando no ponto fora, para o fluxo subjacente. |
2 | Public final int write(byte [] b)throws IOException Grava o número atual de bytes gravados neste fluxo de saída de dados. Retorna o número total de bytes gravados no buffer. |
3 | (a) public final void writeBooolean()throws IOException, (b) public final void writeByte()throws IOException, (c) public final void writeShort()throws IOException (d) public final void writeInt()throws IOException Esses métodos escreverão os dados de tipo primitivo específico no fluxo de saída como bytes. |
4 | Public void flush()throws IOException Libera o fluxo de saída de dados. |
5 | public final void writeBytes(String s) throws IOException Grava a string no fluxo de saída subjacente como uma sequência de bytes. Cada caractere na string é escrito, em sequência, descartando seus oito bits mais altos. |
Exemplo
A seguir está um exemplo para demonstrar DataInputStream e DataOutputStream. Este exemplo lê 5 linhas fornecidas em um arquivo test.txt e converte essas linhas em letras maiúsculas e, finalmente, as copia em outro arquivo test1.txt.
import java.io.*;
public class DataInput_Stream {
public static void main(String args[])throws IOException {
// writing string to a file encoded as modified UTF-8
DataOutputStream dataOut = new DataOutputStream(new FileOutputStream("E:\\file.txt"));
dataOut.writeUTF("hello");
// Reading data from the same file
DataInputStream dataIn = new DataInputStream(new FileInputStream("E:\\file.txt"));
while(dataIn.available()>0) {
String k = dataIn.readUTF();
System.out.print(k+" ");
}
}
}
Aqui está o exemplo de execução do programa acima -
Resultado
THIS IS TEST 1 ,
THIS IS TEST 2 ,
THIS IS TEST 3 ,
THIS IS TEST 4 ,
THIS IS TEST 5 ,