Java - DataOutputStream
El flujo DataOutputStream le permite escribir las primitivas en una fuente de salida.
A continuación se muestra el constructor para crear un DataOutputStream.
DataOutputStream out = DataOutputStream(OutputStream out);
Una vez que tenga el objeto DataOutputStream en la mano, habrá una lista de métodos auxiliares, que se pueden usar para escribir el flujo o para realizar otras operaciones en el flujo.
No Señor. | Método y descripción |
---|---|
1 | public final void write(byte[] w, int off, int len)throws IOException Escribe len bytes desde la matriz de bytes especificada comenzando en el punto de salida, en la secuencia subyacente. |
2 | Public final int write(byte [] b)throws IOException Escribe el número actual de bytes escritos en este flujo de salida de datos. Devuelve el número total de bytes escritos en el búfer. |
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 Estos métodos escribirán los datos de tipo primitivo específico en el flujo de salida como bytes. |
4 | Public void flush()throws IOException Vacía el flujo de salida de datos. |
5 | public final void writeBytes(String s) throws IOException Escribe la cadena en el flujo de salida subyacente como una secuencia de bytes. Cada carácter de la cadena se escribe, en secuencia, descartando sus ocho bits más altos. |
Ejemplo
A continuación se muestra un ejemplo para demostrar DataInputStream y DataOutputStream. Este ejemplo lee 5 líneas dadas en un archivo test.txt y convierte esas líneas en letras mayúsculas y finalmente las copia en otro archivo 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+" ");
}
}
}
Aquí está la ejecución de muestra del programa anterior:
Salida
THIS IS TEST 1 ,
THIS IS TEST 2 ,
THIS IS TEST 3 ,
THIS IS TEST 4 ,
THIS IS TEST 5 ,