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

Java Discussion :

Donnée de fichier txt sans séparateur dans une bd sqlite


Sujet :

Java

  1. #1
    Membre à l'essai
    Homme Profil pro
    Étudiant
    Inscrit en
    Novembre 2013
    Messages
    25
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Côte d'Ivoire

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Novembre 2013
    Messages : 25
    Points : 23
    Points
    23
    Par défaut Donnée de fichier txt sans séparateur dans une bd sqlite
    Bonjour je cherche à insérer des données d'un fichier txt dans une base de donné sqlite via jdbc mais voila, le problème c'est que la bd du fichier txt est sans délimiteur comme les virgules(,) ou les doubles quotes ("") du style : " JEAN LEMAIRE 18/10/79 COMPTABLE ". Je sais pas créer une marge pour les chaines de caractères à récupérer pour les différents champs de ma bd. Bon je sais pas si substring fera l'affaire. Merci de m'avoir lu

  2. #2
    Rédacteur/Modérateur
    Avatar de andry.aime
    Homme Profil pro
    Inscrit en
    Septembre 2007
    Messages
    8 391
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Ile Maurice

    Informations forums :
    Inscription : Septembre 2007
    Messages : 8 391
    Points : 15 059
    Points
    15 059
    Par défaut
    Bonjour,

    Avec un regex du genre:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    String line = " JEAN LEMAIRE 18/10/79 COMPTABLE ";
    Pattern p = Pattern.compile("(\\s*.* )(\\d{2}/\\d{2}/\\d{2})(.*\\s*)");
    Matcher m = p.matcher(line);
    if(m.matches()) {
        System.out.println("Nom " + m.group(1));
        System.out.println("Date " + m.group(2));
        System.out.println("Metier " + m.group(3));
    }
    A+.

  3. #3
    Membre à l'essai
    Homme Profil pro
    Étudiant
    Inscrit en
    Novembre 2013
    Messages
    25
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Côte d'Ivoire

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Novembre 2013
    Messages : 25
    Points : 23
    Points
    23
    Par défaut
    Merci, mais je n'ai pas trop bien compris ton code.... voici un peu à quoi ressemble la boucle qui parcoure le fichier txt. Je ne sais pas quoi mettre dans le else pour parcourir et enregistrer les valeurs sachant qu'il n’y pas de délimiteurs. Quelque chose qui compte le nombre de caractère et s’arrête à un nombre prédéfinis pour stocker ce qu'il a compter dans un champ. Bon j'explique probablement un peu mal, mais c'est un peu ça . Merci
    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
     
     
    	//enregistrer la ligne du texte
    			String line = null;
    			//tableau pour enregistrer le client
    			String[]strClient = null;
     
     
    while(true) {
    				// 1 ligne
    				line = bReader.readLine();
     
    				if(line == null) {
    					break;
    				} else {
     
    				}
    			}

  4. #4
    Rédacteur/Modérateur
    Avatar de andry.aime
    Homme Profil pro
    Inscrit en
    Septembre 2007
    Messages
    8 391
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Ile Maurice

    Informations forums :
    Inscription : Septembre 2007
    Messages : 8 391
    Points : 15 059
    Points
    15 059
    Par défaut
    Citation Envoyé par Kriskev Voir le message
    Merci, mais je n'ai pas trop bien compris ton code....
    ...
    sachant qu'il n’y pas de délimiteurs
    Si t'as testé le code, tu comprendras au moins ce qu'il fait. C'est une piste pour résoudre ton problème, on ne va pas coder à ta place. Pour savoir un peu plus sur le regex, lit ce tutoriel.

    A+.

  5. #5
    Membre à l'essai
    Homme Profil pro
    Étudiant
    Inscrit en
    Novembre 2013
    Messages
    25
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Côte d'Ivoire

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Novembre 2013
    Messages : 25
    Points : 23
    Points
    23
    Par défaut
    Je ne demande pas de coder à ma place. Je cherchais juste un moyens d'extraire une sous-chaîne d'une chaîne à partir d'une position donnée et je me retrouvais pas dans le regex concernant la position.

  6. #6
    Rédacteur/Modérateur
    Avatar de andry.aime
    Homme Profil pro
    Inscrit en
    Septembre 2007
    Messages
    8 391
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Ile Maurice

    Informations forums :
    Inscription : Septembre 2007
    Messages : 8 391
    Points : 15 059
    Points
    15 059
    Par défaut
    Le bout de code que j'ai donné va récupérer trois champs selon le pattern défini, tu l'as testé? ça ne répond pas à ton besoin?

    A+.

  7. #7
    Membre à l'essai
    Homme Profil pro
    Étudiant
    Inscrit en
    Novembre 2013
    Messages
    25
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Côte d'Ivoire

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Novembre 2013
    Messages : 25
    Points : 23
    Points
    23
    Par défaut
    Oui j'ai testé ton code,il fonctionne parfaitement mais là j'avais juste besoin de récupérer les caractère sans chercher à les formater préalablement du coup j'ai du utilisé substring, je pensais qu'il y avait mieux mais j'ai vu qu'il correspondait à mes attentes. exemple String in1= ligne.substring(4,12);
    Merci

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [XL-2003] Importer fichier de données sans séparateur dans xls
    Par flxlechat dans le forum Macros et VBA Excel
    Réponses: 7
    Dernier message: 06/03/2016, 15h43
  2. Réponses: 5
    Dernier message: 17/04/2011, 10h52
  3. Réponses: 2
    Dernier message: 11/08/2008, 10h00
  4. Réponses: 8
    Dernier message: 08/03/2007, 16h54
  5. Réponses: 4
    Dernier message: 08/04/2006, 09h10

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