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

Composants graphiques Android Discussion :

importer les element d'un spinner depuis un fichier texte


Sujet :

Composants graphiques Android

  1. #1
    Membre averti
    Homme Profil pro
    Enseignant
    Inscrit en
    Août 2015
    Messages
    16
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Bas Rhin (Alsace)

    Informations professionnelles :
    Activité : Enseignant

    Informations forums :
    Inscription : Août 2015
    Messages : 16
    Par défaut importer les element d'un spinner depuis un fichier texte
    Bonjour.
    je suis .....un gros débutant en Java et android. Je pensé que lire "le livre de JAVA premier langage" et "le JAVA pour les nuls" allait m'aider à développer mon appli android mais ...il me manque encore pas mal d'élément.
    Et en plus je comprends pas grand chose à l'anglais. Si après tout cela, vous voulez encore m'aider....MERCI
    Voici mon objectif:
    J'ai créé un menu déroulant (spinner) qui fonctionne et qui va chercher les items dans le fichier strings.xml. Je souhaiterais qu'il aille chercher les items dans un fichier txt ou autre( csv) stocké sur mon téléphone.
    J'ai déjà quelques éléments mais je préfère ne pas vous les donner car il se peut que je fasse fausse route.
    MERCI

  2. #2
    Membre averti
    Homme Profil pro
    Étudiant
    Inscrit en
    Septembre 2013
    Messages
    31
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Septembre 2013
    Messages : 31
    Par défaut
    Bonjour,

    Lorsque tu Parse ton fichier, tu peux enregistrer les item dans un ArrayList de la façons suivante.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
    ArrayList<String> arrayList = new ArrayList<String>();
     
    arrayList.add("Item1");
    ...
    Une fois ceci fait tu auras besoin d'un ArrayAdapter pour rendre ta liste compatible avec ton spinner

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    ArrayAdapter<String> adapter = new ArrayAdapter<String> (this, android.R.layout.simple_spinner_dropdown_item, arrayList);
    enfin il ne te reste plus qu'à passer ton adapter à ton spinner à l'aide de la méthode setAdapter();

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    spinner.setAdapter(adapter);

  3. #3
    Membre averti
    Homme Profil pro
    Enseignant
    Inscrit en
    Août 2015
    Messages
    16
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Bas Rhin (Alsace)

    Informations professionnelles :
    Activité : Enseignant

    Informations forums :
    Inscription : Août 2015
    Messages : 16
    Par défaut
    Merci pour ta réponse. Voici le code que j'ai actuellement.
    sous MainActivity.java

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    spinner = (Spinner)findViewById(R.id.spinner2);
            ArrayAdapter adapter2= ArrayAdapter.createFromResource(this, R.array.Eleve, android.R.layout.simple_spinner_item);
            spinner.setAdapter(adapter2);
            spinner.setOnItemSelectedListener(this);
    et dans le fichier strings.xml
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    <string-array name="Eleve">
            <item>nomeleve1</item>
            <item>nomeleve2</item>
            <item>nomeleve3</item>
        </string-array>
    mais je voudrais que mes Items soient extrait d'un fichier .txt par exemple situé sur mon telephone....nomeleve.txt.
    je dois faire un truc comme ça??
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    ArrayAdapter adapter2= ArrayAdapter.createFromResource(this, R.array.file nomeleve.txt, android.R.layout.simple_spinner_item);
    merci

  4. #4
    Membre averti
    Homme Profil pro
    Étudiant
    Inscrit en
    Septembre 2013
    Messages
    31
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Septembre 2013
    Messages : 31
    Par défaut
    Hello,

    il est nécessaire d'extraire les informations de ton fichier avant de pouvoir l'utiliser.
    Imaginons que ton fichier txt soit constitué de la façons suivante :

    Eleve1
    Eleve2
    Eleve3
    Eleve4
    ...
    Il va falloir d'abord ouvrir le fichier, puis extraire chaque ligne de ton fichier et l'insérer dans un ArrayList comme je l'ai montré précédemment.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
     
    try {
            //Ouverture du fichier
            InputStream in = openFileInput("eleves.txt");
            BufferReader reader = new BufferReader(new InputStreamReader(in));
           //Boucle de lecture de ton Buffer.
            while(reader != null && (line = reader.readline()) != null) {
                  //insertion de chaque ligne du fichier dans un ArrayList.
                  arraylist.add(line); 
            }
         } catch (FileNotFoundException e) {
            e.printStackTrace();
    }
    Attention cependant le traitement de lecture doit être effectué dans un thread différent de l'UI thread. (Je t'invite a te renseigner un peu plus sur les AsyncTask)

  5. #5
    Membre averti
    Homme Profil pro
    Enseignant
    Inscrit en
    Août 2015
    Messages
    16
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Bas Rhin (Alsace)

    Informations professionnelles :
    Activité : Enseignant

    Informations forums :
    Inscription : Août 2015
    Messages : 16
    Par défaut
    Merci pour ton aide.
    J'ai effectué les changements que tu m'as indiqué lors de ton premier post. Cela fonctionne parfaitement.
    Concernant ton 2°post:
    Où doit être stocké le fichier text ( j'utilise android studio et je teste directement en usb sur mon Galaxy note 2)?
    Tu utilise un Try pour gérer une exception je crois
    Concernant le thread (nouveauté pour moi), c'est le temps d'exécution??? Tu veux dire que l'opération d'aller chercher les items dans mon fichier texte peut être trop longue et donc ne pas se faire???
    Merci

  6. #6
    Membre averti
    Homme Profil pro
    Enseignant
    Inscrit en
    Août 2015
    Messages
    16
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Bas Rhin (Alsace)

    Informations professionnelles :
    Activité : Enseignant

    Informations forums :
    Inscription : Août 2015
    Messages : 16
    Par défaut
    La nuit porte conseil....
    J'ai donc décide:
    - d'importer (grâce au bouton setting)mon fichier texte lors de la première utilisation de l'appli et de stocké les info dans un tableau
    - les items à afficher dans mon spinner seront donc tiré de ce tableau.

    y'a plus qu'à...y passer quelques heures
    N'hésitez pas à m'aider.
    Merci

    une petite question: ou doit être stocké mon fichier texte?
    sur le téléphone mais où????

Discussions similaires

  1. Importer des données depuis un fichier texte
    Par Tofalu dans le forum Contribuez
    Réponses: 1
    Dernier message: 28/07/2013, 10h55
  2. [AC-2003] Importer des données depuis un fichier texte
    Par Piedbaguette dans le forum Modélisation
    Réponses: 21
    Dernier message: 07/07/2011, 18h23
  3. importer les données dans une table depuis un fichier
    Par bennkabazz dans le forum PostgreSQL
    Réponses: 4
    Dernier message: 23/12/2008, 11h34
  4. Importer depuis un fichier texte
    Par kis93 dans le forum MATLAB
    Réponses: 6
    Dernier message: 02/10/2008, 18h09
  5. Réponses: 2
    Dernier message: 05/07/2006, 09h14

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