Os objetos criados pelas classes DataInputStream e DataOutputStream são chamados de fluxos de entrada de dados e fluxos de saída de dados . Esses dois fluxos são fluxos úteis que permitem aos programas ler dados brutos Java em um estilo independente da máquina. Em outras palavras, ao ler um valor, você não precisa mais se preocupar com quantos bytes o valor deve ter.
Os métodos de construção de DataInputStream e DataOutputStream são os seguintes:
O fluxo de entrada de dados criado aponta para um fluxo de entrada subjacente especificado pelo parâmetro in.
O fluxo de saída de dados criado aponta para um fluxo de saída subjacente especificado pelo parâmetro out.
Os métodos comumente usados das classes DataInputStream e DataOutputStream são os seguintes:
Por exemplo, grave vários tipos de dados Java em um arquivo e depois leia-os:
importjava.io.*;publicclassMain{publicstaticvoidmain(Stringargs[]){Filefile=newFile(apple.txt);try{FileOutputStreamfos=newFileOutputStream(arquivo);DataOutputStreamoutData=newDataOutputStream(fos);outData.writeInt(100);outData.writeLong (123456);outData.writeFloat(3.1415926f);outData.writeDouble(987654321.1234);outData.writeBoolean(true);outData.writeChars(Howareyoudoing);}catch(IOExceptione){}tentar{FileInputStreamfis=newFileInputStream(file);DataInputStreaminData =newDataInputStream(fis);System.out.println(inData.readInt());//Lê dados int System.out.println(inData.readLong());//Lê dados longos System.out.println( +inData .readFloat());//Lê dados flutuantes System.out.println(inData.readDouble());//Lê dados duplos System.out.println(inData.readBoolean());//Lê dados booleanos charc=' ';while((c=inData.readChar())!='