Problemas con InputStremas y OutputStreams
Publicado por Pedro (1 intervención) el 09/05/2001 20:02:17
En ejecucion me da un error al hacer new byte[l], es un error de dimensiones,como lo puedo resolver
public class comunicacion
{
private OutputStream os=null;
private InputStream is=null;
public comunicacion(Socket so)
{
try{
os=so.getOutputStream();
is=so.getInputStream();
}catch(IOException e){
System.err.println("Error al crear los streams del socket");
}
}
public void enviar()
{
try{
os.flush();
}catch(IOException e){
System.err.println("Error al enviar datos");
}
}
public void putString(String v)
{
byte[]b=v.getBytes();
putInt(b.length);
try{
os.write(b);
}catch(IOException ioe){}
}
public void putInt(int v)
{
try{
os.write(v);
}catch(IOException e){}
}
public String getString()
{
int l=getInt();
byte[]b=new byte[50];
try{
is.read(b);
}catch (IOException ioe){
}
return new String(b);
}
public int getInt()
{
byte[]b=new byte[4];
int val = 0;
try{
val=is.read(b);
}catch (IOException ioe){
return -1;
}
for(int i=0;i<4;i++)
val=val*256+b[i];
return val;
}
}
public class comunicacion
{
private OutputStream os=null;
private InputStream is=null;
public comunicacion(Socket so)
{
try{
os=so.getOutputStream();
is=so.getInputStream();
}catch(IOException e){
System.err.println("Error al crear los streams del socket");
}
}
public void enviar()
{
try{
os.flush();
}catch(IOException e){
System.err.println("Error al enviar datos");
}
}
public void putString(String v)
{
byte[]b=v.getBytes();
putInt(b.length);
try{
os.write(b);
}catch(IOException ioe){}
}
public void putInt(int v)
{
try{
os.write(v);
}catch(IOException e){}
}
public String getString()
{
int l=getInt();
byte[]b=new byte[50];
try{
is.read(b);
}catch (IOException ioe){
}
return new String(b);
}
public int getInt()
{
byte[]b=new byte[4];
int val = 0;
try{
val=is.read(b);
}catch (IOException ioe){
return -1;
}
for(int i=0;i<4;i++)
val=val*256+b[i];
return val;
}
}
Valora esta pregunta


0