IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Entrée/Sortie Java Discussion :

Erreur de connection


Sujet :

Entrée/Sortie Java

  1. #1
    Membre confirmé
    Profil pro
    Inscrit en
    Février 2008
    Messages
    140
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2008
    Messages : 140
    Par défaut Erreur de connection
    Bonjour, j'ai crée un serveur ftp et j'essaye de me connecter dessus à partir d'un code en java, mais j'ai cette erreur:

    java.io.FileNotFoundException: C:\Employes (Accès refusé)
    at java.io.FileOutputStream.open(Native Method)

    Voici mon code:

    le 1er fichier:

    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
     
    package test;
     
     
    import test.SunFtpWrapper;
    import java.io.*;
     
     
    public class FtpWrapperTest {
    	public static void main (String[] args) {
    		try {
    			SunFtpWrapper ftp = new SunFtpWrapper();
    			String serverName = "127.0.0.1";
    			ftp.openServer(serverName);
    			if (ftp.serverIsOpen()) {
    				System.out.println("Connected to " + serverName);
    				try {
    					ftp.login("DRH", "admin");
    					System.out.println("Welcome message:\n" + ftp.welcomeMsg);
    					System.out.println("Current Directory: " + ftp.pwd());
    					System.out.println("Results of a raw LIST command:\n" + ftp.listRaw());
    					System.out.println("Downloading file robots.txt");
    					ftp.ascii();
    					ftp.downloadFile("25.jpg", "C:\\Employes");
    				} catch (Exception ftpe) {
    					ftpe.printStackTrace();
    				} finally {
    					ftp.closeServer();
    				}
    			} else {
    				System.out.println("Unable to connect to" + serverName);
    			}
    			System.out.println("Finished");
    		} catch(Exception e) {
    			e.printStackTrace();
    		}
    	}
    }




    le second fichier:

    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
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    74
    75
    76
    77
    78
    79
    80
    81
    82
    83
    84
    85
    86
    87
    88
    89
    90
    91
    92
    93
    94
    95
    96
    97
    98
    99
    100
    101
    102
    103
    104
    105
    106
    107
    108
    109
    110
    111
    112
     
     
     
    package test;
     
     
    import sun.net.ftp.FtpClient;
    import java.util.Vector;
    import java.io.*;
     
    public class SunFtpWrapper extends FtpClient {
     
     
    	/** Get the present working directory */
    	public String pwd() throws IOException {
    		issueCommand("PWD");
    		if (isValidResponse()) {
    			String response = getResponseString().substring(4).trim();
    			if (response.startsWith("\""))
    				response = response.substring(1);
    			if (response.endsWith("\""))
    				response = response.substring(0, response.length() - 1);
    			return response;
    		} else {
    			return "";
    		}
    	}
     
    	/** Go up one directory */
    	public boolean cdup() throws IOException {
    		issueCommand("CDUP");
    		return isValidResponse();
    	}
     
    	/** Create a new directory */
    	public boolean mkdir (String newDir) throws IOException {
    		issueCommand("MKDIR " + newDir);
    		return isValidResponse();
    	}
     
    	/** Delete a remote file */
    	public boolean deleteFile (String fileName) throws IOException {
    		issueCommand("DELE " + fileName);
    		return isValidResponse();
    	}
     
    	/** Get the results of the LIST command as a Vector of Strings. 
              * Because there's no standard format for the results of a LIST
              * command, it's hard to tell what resulting data will look like.
              * Just be aware that different servers have different ways of
              * returning your LIST data. */
    	public Vector listRaw() throws IOException {
    		String fileName;
    		Vector ftpList = new Vector();
    		BufferedReader reader = new BufferedReader(new InputStreamReader(list()));
    		while ((fileName = reader.readLine()) != null) {
    			ftpList.add(fileName);
    		}
    		return ftpList;
    	}
     
    	/** Get the response code from the last command that was sent */
    	public int getResponseCode() throws NumberFormatException {
    		return Integer.parseInt(getResponseString().substring(0, 3));
    	}
     
    	/** Return true if the last response code was in the 200 range, 
              * false otherwise */
    	public boolean isValidResponse() {
    		try {
    			int respCode = getResponseCode();
    			return (respCode  >= 200 && respCode < 300);
    		} catch (Exception e) {
    			return false;
    		}
    	}
     
    	/** Send a raw FTP command to the server. You can get the response
              * by calling getResponseString (which returns the entire response as a
              * single String) or getResponseStrings (which returns the response
              * as a Vector). */
    	public int issueRawCommand (String command) throws IOException {
    		return issueCommand(command);
    	}
     
    	/** Download a file from the server, and save it to the specified local file */
    	public boolean downloadFile (String serverFile, String localFile) throws IOException {
    		int i = 0;
    		byte[] bytesIn = new byte[1024];
    		BufferedInputStream in = new BufferedInputStream(get(serverFile));
    		FileOutputStream out = new FileOutputStream(localFile);
    		while ((i = in.read(bytesIn)) >= 0) {
    			out.write(bytesIn, 0, i);
    		}
    		out.close();
    		return true;
    	}
     
    	/** Upload a file to the server */
    	public boolean uploadFile (String localFile, String serverFile) throws IOException {
    		int i = 0;
    		byte[] bytesIn = new byte[1024];
    		FileInputStream in = new FileInputStream(localFile);
    		BufferedOutputStream out = new BufferedOutputStream(put(serverFile));
    		while ((i = in.read(bytesIn)) >= 0) {
    			out.write(bytesIn, 0, i);
    		}
    		in.close();
    		out.close();
    		return true;
    	}
    }

    Merci d'avance pour votre aide.

  2. #2
    Membre chevronné
    Profil pro
    Inscrit en
    Octobre 2007
    Messages
    442
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2007
    Messages : 442
    Par défaut
    Citation Envoyé par mimi51340 Voir le message
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    ftp.downloadFile("25.jpg", "C:\\Employes");
    1) chemin complet pour le fichier en local (ex: C:\\MesImages\\25.jpg)

    2) chemin complet pour le fichier distant (ex: C:\\Employes\\25.jpg)

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    ftp.downloadFile("C:\\MesImages\\25.jpg", "C:\\Employes\\25.jpg");
    Et vérifies que le répertoire Employes existe bien sur le serveur.

  3. #3
    Membre confirmé
    Profil pro
    Inscrit en
    Février 2008
    Messages
    140
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2008
    Messages : 140
    Par défaut
    c'est bon le problème est résolu je te remercie. En faite d'après ma fonction download(), c'est le chemin du serveur en 1er puis celui du DD.

    Mais maintenant j'ai un autre problème lorsque je veux télécharger mon image, voici mon erreur:
    java.io.FileNotFoundException: QUIT: 550 can't access file.


    Merci encore à vous.

Discussions similaires

  1. aide SVP : erreur de connection, tns protocol
    Par isidore dans le forum Connexions aux bases de données
    Réponses: 5
    Dernier message: 04/04/2006, 16h16
  2. [Access]: message d erreur: erreur de connection!!!
    Par amine15534 dans le forum Access
    Réponses: 1
    Dernier message: 21/03/2006, 14h45
  3. Erreur de connection avec une ADOTable
    Par Sunchaser dans le forum C++Builder
    Réponses: 2
    Dernier message: 15/03/2006, 18h03
  4. [VB]DataEnvironment et erreurs de connections
    Par VVE dans le forum VB 6 et antérieur
    Réponses: 11
    Dernier message: 31/01/2006, 18h03
  5. [ADO.NET] Erreur de connection à une DB SQL
    Par BilTCD dans le forum ASP
    Réponses: 4
    Dernier message: 10/08/2005, 15h11

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo