Bonjour, je souhaiterais faire un post vers un serveur d'un fichier xml. Je ne sais pas à quel endroit il faut ajouter le fichier est-ce qu'il y a une fonction spéciale pour faire ça.

voici le code que j'ai fait mais qui ne fonctionne pas. Dans ce code j'ajoute directement dans la requete le fichier que je veux poster.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
 
public String post(String monURL,String data,File file) {
	  String response = "";
	  try {
		  //ouvrir une connexion
	    	URL url = new URL(monURL) ;
	    	URLConnection conn = url.openConnection();
	    	conn.setRequestProperty("Content-Type", "application/x-www-form-urlencoded");
	    	conn.setDoOutput(true);
	    	OutputStreamWriter wr = new OutputStreamWriter(conn.getOutputStream());
 
		      //envoi des données dans la requête
 
	    	wr.write(data);
 
                              //   ouverture du flux de lecture pour le fichier
		      FileInputStream fis = new FileInputStream(file);
		      String readFile = "";
		      try {
 
//		       création d'un buffer de 4Ko ( améliore la vitesse de transmission)
		    	  byte[] buf = new byte[4 * 1024]; 
		    	  @SuppressWarnings("unused") int bytesRead;
		    	  while ((bytesRead = fis.read(buf)) != -1) {
		    		  String b = new String(buf);
		    		  readFile+=b;
		    	  }
		      }finally{
		      if (fis != null) fis.close();
 
		      //envoi du fichier
		      wr.write(readFile);
		      }
 
	    	wr.flush();
 
	    	// reception de la réponse
	    	BufferedReader rd = new BufferedReader(new InputStreamReader(conn.getInputStream()));
	    	String line;
 
	    	while ((line = rd.readLine()) != null) {
	    	            // Process line...
	    		response+=line;
 
	    	        }
	    	wr.close();
	    	rd.close();
	    	System.out.println( response ) ;
 
 
 
	    } catch (Exception e) {
	      e.printStackTrace();
	    }
	    return response;
 
	  }