|
Envoyer un objet en socket
|
Voici un exemple de code permettant de transferer un objet en socket :
public class Clientstream {
/** * */ public Clientstream() { File[] fs = new File[3]; fs[0] = new File("c:/TestFiles/Fichier1.txt"); fs[1] = new File("c:/TestFiles/Fichier2.txt"); fs[2] = new File("c:/TestFiles/Fichier3.txt"); FileIO files = new FileIO(fs); Socket socket; try { socket = new Socket("adresse du server",port_du_server); OutputStream os = socket.getOutputStream(); ObjectOutputStream oos = new ObjectOutputStream(os); oos.writeObject(files); oos.close(); os.close(); socket.close(); } catch (UnknownHostException e) { // TODO Auto-generated catch block e.printStackTrace(); } catch (IOException e) { // TODO Auto-generated catch block e.printStackTrace(); } } public static void main(String[] args) { new Clientstream(); } }
Ici un objet de type "File" sera envoyer vers un server.(Voir exemple suivant pour le server)
Voici la classe "FileIO" correspondant à l'objet envoyé:
public class FileIO implements Serializable{
/** * Comment for <code>serialVersionUID</code> */ private static final long serialVersionUID = 1L; private File[] file; private int lenght; /** * @param files */ public FileIO(File[] file) { super(); this.file = file; this.lenght=file.length; } public int lenght() { return lenght; } /** * @return Returns the files. */ public File getFile(int i) { return file[i]; } }
|
|
|