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 :

Lire la base de donnée .txt


Sujet :

Java

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre actif
    Homme Profil pro
    Recherches en Informatique
    Inscrit en
    Juillet 2013
    Messages
    60
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Canada

    Informations professionnelles :
    Activité : Recherches en Informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juillet 2013
    Messages : 60
    Par défaut Lire la base de donnée .txt
    Bonjour,
    J'ai une base de données .txt qui contiens un graph en ListAdjance, dont voici la struct:

    fiendship.txt
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
     
    undirected
    100
    40205    20807    969816 190621
    20807    240695    969816 190621
    90285    20807    
    20257    240695    969816 190621
    50279    20807    969816 19062    140205    240695    969816 190621
    40205    40205    20807 190621
    40205    240695    40205 20807
    Je essai de recréer le graphe en le représentant sous une forme comme par exemple:

    40205 --> 20807 --> 969816 --> 190621
    etc...

    Mais je n'arrive pas vraiment jusqu' là.

    Je vous remercie si vous pouvez juste me pister avec des morceaux de codes ou même un gros.

  2. #2
    Modérateur
    Avatar de wax78
    Homme Profil pro
    R&D - Palefrenier programmeur
    Inscrit en
    Août 2006
    Messages
    4 098
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 44
    Localisation : Belgique

    Informations professionnelles :
    Activité : R&D - Palefrenier programmeur
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Août 2006
    Messages : 4 098
    Par défaut
    Montres nous d'abord ton actuelle tentative de code et ensuite on verra.
    (Les "ça ne marche pas", même écrits sans faute(s), vous porteront discrédit ad vitam æternam et malheur pendant 7 ans)

    N'oubliez pas de consulter les FAQ Java et les cours et tutoriels Java

  3. #3
    Membre actif
    Homme Profil pro
    Recherches en Informatique
    Inscrit en
    Juillet 2013
    Messages
    60
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Canada

    Informations professionnelles :
    Activité : Recherches en Informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juillet 2013
    Messages : 60
    Par défaut Le code d'essay
    Citation Envoyé par wax78 Voir le message
    Montres nous d'abord ton actuelle tentative de code et ensuite on verra.
    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
     
    package graphe;
     
    import java.io.File;
    import java.io.FileNotFoundException;
    import java.io.IOException;
    import java.util.Scanner;
     
    class Voisin {
        public int sommetNum;
        public Voisin next;
        public Voisin(int vnum, Voisin nbr) {
                this.sommetNum = vnum;
                next = nbr;
        }
    }
     
    class Sommet {
        String name;
        Voisin adjList;
        Sommet(String name, Voisin neighbors) {
                this.name = name;
                this.adjList = neighbors;
        }
    }
     
    /**
     * @author XXTK-GBTU. Jan 16, 2016.
     */
    public class Graph {
     
    	Sommet[] adjLists;
     
        public Graph(String file) throws FileNotFoundException {
     
            Scanner sc = new Scanner(new File(file));
     
            String graphType = sc.next();
            boolean undirected=true;
            if (graphType.equals("directed")) {
                undirected=false;
            }
     
            adjLists = new Sommet[sc.nextInt()];
     
            // read vertices
            for (int v=0; v < adjLists.length; v++) {
                adjLists[v] = new Sommet(sc.next(), null);
            }
     
            // read edges
            while (sc.hasNext()) {
     
                // read vertex names and translate to vertex numbers
                int v1 = indexForName(sc.next());
                int v2 = indexForName(sc.next());
     
                // add v2 to front of v1's adjacency list and
                // add v1 to front of v2's adjacency list
                adjLists[v1].adjList = new Voisin(v2, adjLists[v1].adjList);
                if (undirected) {
                    adjLists[v2].adjList = new Voisin(v1, adjLists[v2].adjList);
                }
            }
        }
     
        int indexForName(String name) {
            for (int v=0; v < adjLists.length; v++) {
                if (adjLists[v].name.equals(name)) {
                    return v;
                }
            }
            return -1;
        }   
     
        public void print() {
            System.out.println();
            for (int v=0; v < adjLists.length; v++) {
                System.out.print(adjLists[v].name);
                for (Voisin nbr=adjLists[v].adjList; nbr != null;nbr=nbr.next) {
                    System.out.print(" --> " + adjLists[nbr.sommetNum].name);
                }
                System.out.println("\n");
            }
        }
     
        /**
         * @param args
         */
        public static void main(String[] args)
        throws IOException {
            // TODO Auto-generated method stub
            Scanner sc = new Scanner(System.in);
            System.out.print("Enter graph input file name: ");
            String file = sc.nextLine();
            Graph graph = new Graph(file);
            graph.print();
            // /home/GonisCrom/RECHERCHE II/Recherche/src/graphe/friendship.txt
        }
     
    }

Discussions similaires

  1. Réponses: 3
    Dernier message: 14/08/2012, 10h36
  2. lire une base de données
    Par nanouchg dans le forum MATLAB
    Réponses: 1
    Dernier message: 27/12/2011, 17h18
  3. Réponses: 3
    Dernier message: 04/08/2010, 14h05
  4. [FLASH8]base de donnée .txt
    Par TRUNKS-SSJ7 dans le forum Dynamique
    Réponses: 4
    Dernier message: 01/07/2007, 11h53
  5. Lire une base de données access 2007 avec access 2003
    Par gblanchard dans le forum Runtime
    Réponses: 6
    Dernier message: 08/05/2007, 02h59

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