Erreur type de retour d'une fonction [Résolu]

Signaler
Messages postés
4
Date d'inscription
jeudi 15 novembre 2012
Statut
Membre
Dernière intervention
15 novembre 2012
-
Messages postés
6414
Date d'inscription
mardi 8 mars 2005
Statut
Modérateur
Dernière intervention
29 juillet 2020
-
akrouti
Bonjour,
Voila une fonction de type de retour String mais elle n'affiche rien, et ça me complique ça fait une heure. Quelqu'un me dit ou est l'erreur?
package client;
import java.io.BufferedReader;
import java.io.BufferedWriter;
import java.io.ByteArrayOutputStream;
import java.io.DataInputStream;
import java.io.DataOutputStream;
import java.io.File;
import java.io.FileOutputStream;
import java.io.IOException;
import java.io.InputStream;
import java.io.InputStreamReader;
import java.io.OutputStream;
import java.io.OutputStreamWriter;
import java.io.PrintStream;
import java.io.PrintWriter;
import java.io.UnsupportedEncodingException;
import java.net.InetAddress;
import java.net.InetSocketAddress;
import java.net.Socket;
import java.util.Enumeration;
import javax.comm.*;
public class Commande 
{
/**
 * @param args
 * @throws NoSuchPortException
 * @throws PortInUseException
 * @throws IOException
 * @throws UnsupportedCommOperationException
 * @throws UnsupportedEncodingException
 * @throws InterruptedException
 */
public String executerAT(String cmd) throws UnsupportedCommOperationException, UnsupportedEncodingException, IOException ,PortInUseException
{
Enumeration<CommPortIdentifier> enumP = CommPortIdentifier.getPortIdentifiers();
BufferedReader serial_in=null;
PrintStream serial_out=null;
String msg="";
try
{
CommPortIdentifier tmp = enumP.nextElement();
System.out.println(tmp.getName());
SerialPort serial = (SerialPort) tmp.open("Me",2000);
serial.setSerialPortParams(460800, SerialPort.DATABITS_8,SerialPort.STOPBITS_1,  SerialPort.PARITY_NONE);
serial_in=new BufferedReader(new InputStreamReader(serial.getInputStream()));
serial_out=new PrintStream(serial.getOutputStream(),true,"ISO-8859-1");
serial_out.print(cmd);
serial_out.print("\r");
msg=msg+serial_in.readLine()+"\n";
msg=msg+serial_in.readLine()+"\n";
msg=msg+serial_in.readLine()+"\n";
}catch(PortInUseException e)
{
e.printStackTrace();
System.exit(0);
}
return msg;
}
public static void main(String[] args) throws NoSuchPortException, PortInUseException, IOException, UnsupportedCommOperationException, InterruptedException
{
Commande t=new Commande();
t.executerAT("AT");
}
}
 


Merci d'avance.

2 réponses


Salut,

{
Commande t=new Commande();
String retour = t.executerAT("AT");
               System.out.println("msg = " + retour);
}



Cordialement,

...\ Dan /...
Messages postés
6414
Date d'inscription
mardi 8 mars 2005
Statut
Modérateur
Dernière intervention
29 juillet 2020
295
Bonjour,

Ok, ton problème est résolu mais tu devrais gérer tes exceptions, ce genre de chose sur une méthode main, ce n'est vraiment pas génial :
throws NoSuchPortException, PortInUseException, IOException, UnsupportedCommOperationException, InterruptedException