Dados byte int

3 respostas
T

Ola pessoal,
estou com duvidas

nao entendi o q ocorre no bloco try...
e tb n sei ao certo o q o System.out.write faz
se puderem me ajudar ae

import java.io.*;

 

class EntraDados

{

     public static void main (String args[])

    {

           byte vetortexto[] = new byte[200];  

             int byteslidos = 0;

          System.out.println("Escreva algo:");

          try

          {

                  byteslidos = System.in.read(vetortexto);

                  System.out.print("Voce escreveu:");

                  System.out.write(vetortexto,0,byteslidos);

          }

          catch (IOException e)

          {

                    

          }     

    }   

}

3 Respostas

marcosvidolin

Basicamente é usado para tratar exceções:
O java tenta executar o codigo dentro do “try”, caso haja algum erro (exceção) ele cai no “catch” para tratar essa exeção. Pode existir varios catch no mesmo “try” para tratar erros de varios tipos diferentes gerado pelo mesmo codigo.
Obs.: O catch só é executado caso tenha ocorrido alguma exceção.

try {
	// seu codigo

} catch (IOException e) {
	// código que trata o erro  

}

Além do “try” e “catch” existem um “finally”, que é executado independente se existiu exceção ou nao, ou seja, ele sempre é executado.
Obs.: O uso do “finally” é opcional.

try {  
	// seu codigo

 } catch (Exception e) {  
     // codigo que trata o erro  

 } finally {  
     // código executado, mesmo levantando exceção  

}
juliano_FRG

Acho que ele quer saber o que siginifica System.in.read e o System.out.write.
write
public void write(byte[] b,
int off,
int len)
throws IOExceptionWrites len bytes from the specified byte array starting at offset off to this output stream. The general contract for write(b, off, len) is that some of the bytes in the array b are written to the output stream in order; element b[off] is the first byte written and b[off+len-1] is the last byte written by this operation.
The write method of OutputStream calls the write method of one argument on each of the bytes to be written out. Subclasses are encouraged to override this method and provide a more efficient implementation.

If b is null, a NullPointerException is thrown.

If off is negative, or len is negative, or off+len is greater than the length of the array b, then an IndexOutOfBoundsException is thrown.

Parameters:
b - the data.
off - the start offset in the data.
len - the number of bytes to write.
Throws:
IOException - if an I/O error occurs. In particular, an IOException is thrown if the output stream is closed.

read
public int read(byte[] b,
int off,
int len)
throws IOExceptionReads up to len bytes of data from the input stream into an array of bytes. An attempt is made to read as many as len bytes, but a smaller number may be read. The number of bytes actually read is returned as an integer.
This method blocks until input data is available, end of file is detected, or an exception is thrown.

If len is zero, then no bytes are read and 0 is returned; otherwise, there is an attempt to read at least one byte. If no byte is available because the stream is at end of file, the value -1 is returned; otherwise, at least one byte is read and stored into b.

The first byte read is stored into element b[off], the next one into b[off+1], and so on. The number of bytes read is, at most, equal to len. Let k be the number of bytes actually read; these bytes will be stored in elements b[off] through b[off+k-1], leaving elements b[off+k] through b[off+len-1] unaffected.

In every case, elements b[0] through b[off] and elements b[off+len] through b[b.length-1] are unaffected.

The read(b, off, len) method for class InputStream simply calls the method read() repeatedly. If the first such call results in an IOException, that exception is returned from the call to the read(b, off, len) method. If any subsequent call to read() results in a IOException, the exception is caught and treated as if it were end of file; the bytes read up to that point are stored into b and the number of bytes read before the exception occurred is returned. The default implementation of this method blocks until the requested amount of input data len has been read, end of file is detected, or an exception is thrown. Subclasses are encouraged to provide a more efficient implementation of this method.

Parameters:
b - the buffer into which the data is read.
off - the start offset in array b at which the data is written.
len - the maximum number of bytes to read.
Returns:
the total number of bytes read into the buffer, or -1 if there is no more data because the end of the stream has been reached.
Throws:
IOException - If the first byte cannot be read for any reason other than end of file, or if the input stream has been closed, or if some other I/O error occurs.
NullPointerException - If b is null.
IndexOutOfBoundsException - If off is negative, len is negative, or len is greater than b.length - off

T

bom,vlew a explicacao do try catch e finally clareou um pouco mais aqui

cara mesmo entendendo ingles
achei dificil de compreender essa explicacao…

System.out.write(vetortexto,0,byteslidos);

uma das coisas q nao entendo nessa linha e esse 0 no meio ae;;;

Criado 5 de dezembro de 2008
Ultima resposta 5 de dez. de 2008
Respostas 3
Participantes 3