Ciao innanzitutto grazie per la rispostaquesto è il codice che prende i dati dalla socket:
//metodo run della classe UscitaDati
public void run()
{
int i;
try
{
//in un ciclo infinito legge dall'InputStream i dati che arrivano
//se il valore è 255(IAC) richiama il metodo telnet leggendo i due dati successivi
//altrimenti fa un cast portandolo a carattere e lo inserisce nel PrintStream
while(true)
{
i = in.read();
//se il flusso di dati è stato chiuso (-1) esci dal loop
if(i == -1)
break;
if (i == 255)
{
int i1 = in.read();
int i2 = in.read();
telnet(i1,i2);
}
else
{ //qui ho cercato di togliere almeno il quadratino, la parentesi quadra e il ';'
//ma non so proprio come parsare i caratteri di escape perchè mi legge un byte alla volta
if((char)i ==''||(char)i =='['||(char)i == ';')
os.print(" ");
else
os.print((char)i);
os.flush();
}
}
in.close();
os.close();
ot.close();
System.exit(0);
}
catch(IOException e)
{
throw new RuntimeException(e.getMessage());
}
}

questo è il codice che prende i dati dalla socket:
Rispondi quotando