Partage
  • Partager sur Facebook
  • Partager sur Twitter

Problème exécution fichier

Sujet résolu
    27 janvier 2015 à 12:59:11

    bonjour, 

    j'ai crée un code java me permettant de télécharger un fichier, cependant lorsque je l’exécute celui ci ne m'affiche que le texte dans le main sans télécharger le fichier 

    Voici le code 

    package telechargementfichier;
    
    import java.io.FileOutputStream;
    import java.io.IOException;
    import java.io.InputStream;
    import java.net.URL;
    import java.net.URLConnection;
    
    public class Telechargement {
    
    	public static void getfile(String host){
    		InputStream input = null;
    		
    		FileOutputStream writeFile = null;
    		try{
    			URL url = new URL("http://base-donnees-publique.medicaments.gouv.fr/telechargement.php?fichier=CIS_bdpm.txt");
    			URLConnection connection = url.openConnection();
    			int fileLength = connection.getContentLength();
    			
    			
    			if (fileLength == -1)
    			{
    				System.out.println("Le fichier n'est pas valide");
    				return;
    			}
    			
    			input = connection.getInputStream();
                String fileName = url.getFile().substring(url.getFile().lastIndexOf('/') + 1);
                writeFile = new FileOutputStream(fileName);
                byte[] buffer = new byte[1024];
                int read;
                
                while ((read = input.read(buffer)) > 0)
                	writeFile.write(buffer, 0, read);
                writeFile.flush();
    		}
    		
    		catch (IOException e)
    		{
    			System.out.println("Erreur au telechargement du fichier");
    			e.printStackTrace();
    		}
    		
    		finally
    		{
    			try
    			{
    				writeFile.close();
    				input.close();
    			}
    			
    			catch (IOException e)
    			{
    				e.printStackTrace();
    			}
    		}
    	}
    	
    	public static void main(String[] args) {
    		
    		if (args.length != 1)
    		{
    			System.out.println("donner l'url de telechargement du fichier");
    			return;
    		}
    		
    		getfile(args[0]);
    		
    	}
    }
    

    PS : le code s’exécute dans java application.

    Auriez vous une solution svp ??

    Merci

    • Partager sur Facebook
    • Partager sur Twitter
      27 janvier 2015 à 13:26:21

      package telechargementfichier;
       
      import java.io.FileOutputStream;
      import java.io.IOException;
      import java.io.InputStream;
      import java.net.URL;
      import java.net.URLConnection;
       
      public class Telechargement {
       
          public static void getfile(String host){
              InputStream input = null;

      getfile(String host) c'est normal que host ne sert à rien ?

      • Partager sur Facebook
      • Partager sur Twitter
      Un homme azerty en vaut deux.
        27 janvier 2015 à 14:21:16

        a vrai dire je ne sais pas vraiment j'ai repris ce code sur un site que j'avais trouvé pour la propriété host je ne sais pas :/
        • Partager sur Facebook
        • Partager sur Twitter
          27 janvier 2015 à 15:24:42

          As tu encore le site de référence ?
          • Partager sur Facebook
          • Partager sur Twitter
          Un homme azerty en vaut deux.
            28 janvier 2015 à 11:15:48

            oui :

            https://respawner.fr/blog/index.php?post/2008/09/07/Telecharger-un-fichier-depuis-une-URL-avec-Java

            • Partager sur Facebook
            • Partager sur Twitter
              18 février 2015 à 16:29:45

              j'ai trouver la solution je laisse mon code sa peut toujours servir

              void generique()throws IOException{
              	
              	System.out.println("Telechargement du fichier Generique :");
              	
              	String generique = "C:/Documents and Settings/c.bon/git/clinsearch/drugs/src/main/resources/META-INF/test/generique.csv";
              	URL gen = new URL("http://base-donnees-publique.medicaments.gouv.fr/telechargement.php?fichier=CIS_GENER_bdpm.txt");
              	
              	
              	InputStream in = new BufferedInputStream(gen.openStream());
              	ByteArrayOutputStream out = new ByteArrayOutputStream();
              	
              	byte[] buf = new byte[1024];
              	int n = 0;
              	
              	while (-1!=(n=in.read(buf)))
              	{
              		out.write(buf, 0, n);
              	}
              	
              	byte[] response = out.toByteArray();
              	
              	FileOutputStream fos = new FileOutputStream(generique);
              	fos.write(response);
              	in.close();
              	
              	System.out.println("Fichier Generique téléchargé à l'emplacement " + generique);
              	System.out.println("************************************************************\n");
              }

              • Partager sur Facebook
              • Partager sur Twitter

              Problème exécution fichier

              × Après avoir cliqué sur "Répondre" vous serez invité à vous connecter pour que votre message soit publié.
              × Attention, ce sujet est très ancien. Le déterrer n'est pas forcément approprié. Nous te conseillons de créer un nouveau sujet pour poser ta question.
              • Editeur
              • Markdown