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

Langage Java Discussion :

Lecture fichier Plat avec délimiteurs et insertion données dans mysql


Sujet :

Langage Java

  1. #21
    Modérateur
    Avatar de joel.drigo
    Homme Profil pro
    Ingénieur R&D - Développeur Java
    Inscrit en
    Septembre 2009
    Messages
    12 430
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 54
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Ingénieur R&D - Développeur Java
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Septembre 2009
    Messages : 12 430
    Points : 29 131
    Points
    29 131
    Billets dans le blog
    2
    Par défaut
    En fait le séparateur de valeurs, c'est peut-être |; et non pas | ou ; ? Essaye comme ça alors :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    String[] List = line.split("\\|;",-1);
    L'expression "ça marche pas" ne veut rien dire. Indiquez l'erreur, et/ou les comportements attendus et obtenus, et donnez un Exemple Complet Minimal qui permet de reproduire le problème.
    La plupart des réponses à vos questions sont déjà dans les FAQs ou les Tutoriels, ou peut-être dans une autre discussion : utilisez la recherche interne.
    Des questions sur Java : consultez le Forum Java. Des questions sur l'EDI Eclipse ou la plateforme Eclipse RCP : consultez le Forum Eclipse.
    Une question correctement posée et rédigée et vous aurez plus de chances de réponses adaptées et rapides.
    N'oubliez pas de mettre vos extraits de code entre balises CODE (Voir Mode d'emploi de l'éditeur de messages).
    Nouveau sur le forum ? Consultez Les Règles du Club.

  2. #22
    Membre régulier
    Homme Profil pro
    Analyste Concepteur[Secteur Banque/assurance]/ Ingénieur d'état en informatique
    Inscrit en
    Août 2007
    Messages
    89
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 37
    Localisation : Maroc

    Informations professionnelles :
    Activité : Analyste Concepteur[Secteur Banque/assurance]/ Ingénieur d'état en informatique
    Secteur : Industrie

    Informations forums :
    Inscription : Août 2007
    Messages : 89
    Points : 96
    Points
    96
    Par défaut
    Re Mr JOEL,

    ouii maintenant ça marche ,je viens de tester le traitement.
    Merci beaucoup @JOEL
    bonne journée
    je marque le sujet par la suite Résolu
    Merci encore une fois

  3. #23
    Membre régulier
    Homme Profil pro
    Analyste Concepteur[Secteur Banque/assurance]/ Ingénieur d'état en informatique
    Inscrit en
    Août 2007
    Messages
    89
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 37
    Localisation : Maroc

    Informations professionnelles :
    Activité : Analyste Concepteur[Secteur Banque/assurance]/ Ingénieur d'état en informatique
    Secteur : Industrie

    Informations forums :
    Inscription : Août 2007
    Messages : 89
    Points : 96
    Points
    96
    Par défaut
    Bonjour Joel,
    une toute petite demande concernant la déclaration du pattern:
    private final static Pattern FILE_FILTER = Pattern.compile("RTR_INJECT_TIERS_PROSPECTS[^.]*\\.txt");
    je veux la modifier cette déclaration pour qu'on puisse traiter seulement les fichiers sous format: "RTR_INJECT_TIERS_PROSPECTS_20160420"
    NB:le fichier est sans extension.
    Merci d'avance monsieur joel.

  4. #24
    Modérateur
    Avatar de joel.drigo
    Homme Profil pro
    Ingénieur R&D - Développeur Java
    Inscrit en
    Septembre 2009
    Messages
    12 430
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 54
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Ingénieur R&D - Développeur Java
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Septembre 2009
    Messages : 12 430
    Points : 29 131
    Points
    29 131
    Billets dans le blog
    2
    Par défaut
    Oui, tu peux.

    java.util.regex.Pattern
    L'expression "ça marche pas" ne veut rien dire. Indiquez l'erreur, et/ou les comportements attendus et obtenus, et donnez un Exemple Complet Minimal qui permet de reproduire le problème.
    La plupart des réponses à vos questions sont déjà dans les FAQs ou les Tutoriels, ou peut-être dans une autre discussion : utilisez la recherche interne.
    Des questions sur Java : consultez le Forum Java. Des questions sur l'EDI Eclipse ou la plateforme Eclipse RCP : consultez le Forum Eclipse.
    Une question correctement posée et rédigée et vous aurez plus de chances de réponses adaptées et rapides.
    N'oubliez pas de mettre vos extraits de code entre balises CODE (Voir Mode d'emploi de l'éditeur de messages).
    Nouveau sur le forum ? Consultez Les Règles du Club.

  5. #25
    Membre régulier
    Homme Profil pro
    Analyste Concepteur[Secteur Banque/assurance]/ Ingénieur d'état en informatique
    Inscrit en
    Août 2007
    Messages
    89
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 37
    Localisation : Maroc

    Informations professionnelles :
    Activité : Analyste Concepteur[Secteur Banque/assurance]/ Ingénieur d'état en informatique
    Secteur : Industrie

    Informations forums :
    Inscription : Août 2007
    Messages : 89
    Points : 96
    Points
    96
    Par défaut
    Merci pour votre réponse @joel,

    si j'ai bien compris les 2 expressions entre le * ,représente le nom de fichier et l'extension.
    Dans le cas que j'ai içi ,je dois trouver un fichier commençant par "RTR_INJECT_TIERS_PROSPECTS" et il est sans extension.


    j'ai essayé avec ça :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Pattern.compile("RTR_INJECT_TIERS_PROSPECTS[^.]*\\.*")
    il traite le fichier concerné ,est ce que l'expression est valide j'espère?

  6. #26
    Modérateur
    Avatar de joel.drigo
    Homme Profil pro
    Ingénieur R&D - Développeur Java
    Inscrit en
    Septembre 2009
    Messages
    12 430
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 54
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Ingénieur R&D - Développeur Java
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Septembre 2009
    Messages : 12 430
    Points : 29 131
    Points
    29 131
    Billets dans le blog
    2
    Par défaut
    L'astérisque (*) dans une expression régulière s'applique au motif précédent, pour indiquer qu'on cherche un nombre quelconque de fois ce motif, y compris 0 fois.

    Par exemple "a*" veut dire une suite de a, "", "a", "aa", "aaa", etc. Comme le motif . signifie "n'importe quel caractère", ".*" est une expression qui valide toute chaîne de caractères (y compris une chaîne vide).

    "RTR_INJECT_TIERS_PROSPECTS[^.]*\\.txt", signifie qui vérifier :
    1. d'abord la suite de caractères RTR_INJECT_TIERS_PROSPECTS
    2. suivi de [^.]*, soit [^.] de 0 à n fois
      1. [^.] signifie tout caractère sauf le .

      Donc [^.]* signifie de 0 à n fois n'importe quel caractère sauf le point
    3. suivi de \\., soit suivi d'un caractère .
    4. suivi de txt


    Toi tu cherches un truc qui commence par RTR_INJECT_TIERS_PROSPECTS, suivi de quelque chose genre "_1234", sans extension. Déjà, tu pourrais simplifier au lieu d'utiliser une expression régulière, en utilisant un String.startsWith(), puisque tu cherches quelque chose qui commence par RTR_INJECT_TIERS_PROSPECTS.

    En expressions régulière, écrire une expression qui valide un truc qui commence par un motif correspond à faire une expression qui vérifie le truc suivi de n'importe quoi (soit .*). Ensuite, tout dépend de si tu veux :
    • que RTR_INJECT_TIERS_PROSPECTS soit toujours suivi de quelque chose (soit au moins un caractère, soit .+)
    • que RTR_INJECT_TIERS_PROSPECTS puisse être suivi de 0 caractères
    • qu'il y ait forcément un undescore suivi de chiffres uniquement (soit _\\d+)
    • que l'extension soit absolument manquante (l'expression va dépendre des options précédentes) ou si on s'en moque d'avoir l'extension ou pas
    L'expression "ça marche pas" ne veut rien dire. Indiquez l'erreur, et/ou les comportements attendus et obtenus, et donnez un Exemple Complet Minimal qui permet de reproduire le problème.
    La plupart des réponses à vos questions sont déjà dans les FAQs ou les Tutoriels, ou peut-être dans une autre discussion : utilisez la recherche interne.
    Des questions sur Java : consultez le Forum Java. Des questions sur l'EDI Eclipse ou la plateforme Eclipse RCP : consultez le Forum Eclipse.
    Une question correctement posée et rédigée et vous aurez plus de chances de réponses adaptées et rapides.
    N'oubliez pas de mettre vos extraits de code entre balises CODE (Voir Mode d'emploi de l'éditeur de messages).
    Nouveau sur le forum ? Consultez Les Règles du Club.

  7. #27
    Membre régulier
    Homme Profil pro
    Analyste Concepteur[Secteur Banque/assurance]/ Ingénieur d'état en informatique
    Inscrit en
    Août 2007
    Messages
    89
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 37
    Localisation : Maroc

    Informations professionnelles :
    Activité : Analyste Concepteur[Secteur Banque/assurance]/ Ingénieur d'état en informatique
    Secteur : Industrie

    Informations forums :
    Inscription : Août 2007
    Messages : 89
    Points : 96
    Points
    96
    Par défaut
    Re ,

    Merci pour ton explication détaillée ,maintenant j'ai compris le fonctionnement de cette expression régulière,donc comme vous l'avez mentionné je n'aurai pas besoin de cela ,je vais essayer d'utiliser l'autre expression :String.startsWith(),mais après avoir récupérer le chemin du fichier .
    j'ai fait un test avant la fonction getFile comme ceçi:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     if(FILE_FILTER.pattern().startsWith("RTR_INJECT_TIERS_PROSPECTS"))
            {File file = getFile(DIRECTORY, FILE_FILTER);
    ....

+ Répondre à la discussion
Cette discussion est résolue.
Page 2 sur 2 PremièrePremière 12

Discussions similaires

  1. Réponses: 2
    Dernier message: 06/10/2009, 23h41
  2. Réponses: 8
    Dernier message: 06/03/2008, 16h32
  3. Réponses: 3
    Dernier message: 10/05/2007, 14h12
  4. [DOM XML] Insertion données dans fichier XML avec PHP pour Flash ?
    Par ExSter dans le forum Bibliothèques et frameworks
    Réponses: 17
    Dernier message: 10/05/2006, 11h16
  5. [C#] problème avec l'insertion des données dans MySQL
    Par madica dans le forum Accès aux données
    Réponses: 7
    Dernier message: 08/11/2005, 13h27

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