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

C# Discussion :

recuperer le contenu du fichier texte dans une variable


Sujet :

C#

  1. #1
    Membre du Club
    Profil pro
    Inscrit en
    Mai 2008
    Messages
    99
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2008
    Messages : 99
    Points : 52
    Points
    52
    Par défaut recuperer le contenu du fichier texte dans une variable
    Bonjour,
    je débute en C# et je veux recuperer le contenu d'un fichier dans une variable .
    comment puis je me procéder ?
    merci

  2. #2
    Membre régulier
    Profil pro
    Inscrit en
    Février 2004
    Messages
    57
    Détails du profil
    Informations personnelles :
    Âge : 43
    Localisation : France, Nord (Nord Pas de Calais)

    Informations forums :
    Inscription : Février 2004
    Messages : 57
    Points : 71
    Points
    71
    Par défaut
    en faisant une recherche Google

    ou en consultant les tutoriels écris pour les débutants plein d'envie.

    http://dotnet.developpez.com/cours/?page=csharp#filecs

  3. #3
    Inactif  
    Homme Profil pro
    Chef de projet NTIC
    Inscrit en
    Janvier 2007
    Messages
    6 604
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 63
    Localisation : France

    Informations professionnelles :
    Activité : Chef de projet NTIC

    Informations forums :
    Inscription : Janvier 2007
    Messages : 6 604
    Points : 13 314
    Points
    13 314
    Par défaut
    Bonjour

    Ce bout de code devrait répondre à ta question :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
     
    using (StreamReader reader = new StreamReader("MyFile.Txt"))
    {
      string content = reader.ReadToEnd();
      reader.Close();
    }

  4. #4
    Membre du Club
    Profil pro
    Inscrit en
    Mai 2008
    Messages
    99
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2008
    Messages : 99
    Points : 52
    Points
    52
    Par défaut
    merci pour vos reponses ,

    par contre il me dit une erreur :
    "Embedded statement cannot be a declaration or labeled statement"


    StreamReader reader = new StreamReader("fichier.Txt");

    je dois faire peu etre :
    reader = new StreamReader("Final.Txt");

  5. #5
    Inactif  
    Homme Profil pro
    Chef de projet NTIC
    Inscrit en
    Janvier 2007
    Messages
    6 604
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 63
    Localisation : France

    Informations professionnelles :
    Activité : Chef de projet NTIC

    Informations forums :
    Inscription : Janvier 2007
    Messages : 6 604
    Points : 13 314
    Points
    13 314
    Par défaut
    Citation Envoyé par emayen01 Voir le message
    merci pour vos reponses ,

    par contre il me dit une erreur :
    "Embedded statement cannot be a declaration or labeled statement"


    StreamReader reader = new StreamReader("fichier.Txt");

    je dois faire peu etre :
    reader = new StreamReader("Final.Txt");
    Rien compris. Quelle erreur ? à CT ou à RT ? Essayez d'être précis, bon sang, on veut bien vous aider mais pas jouer aux devinettes.

  6. #6
    Membre éclairé Avatar de ppphil
    Profil pro
    Inscrit en
    Juin 2007
    Messages
    612
    Détails du profil
    Informations personnelles :
    Localisation : Suisse

    Informations forums :
    Inscription : Juin 2007
    Messages : 612
    Points : 685
    Points
    685
    Par défaut
    Citation Envoyé par Bluedeep Voir le message
    Bonjour

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
     
    using (StreamReader reader = new StreamReader("MyFile.Txt"))
    {
      string content = reader.ReadToEnd();
      reader.Close();
    }
    Encore plus simple :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    string content = File.ReadAllText("MyFile.Txt")

  7. #7
    Inactif  
    Homme Profil pro
    Chef de projet NTIC
    Inscrit en
    Janvier 2007
    Messages
    6 604
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 63
    Localisation : France

    Informations professionnelles :
    Activité : Chef de projet NTIC

    Informations forums :
    Inscription : Janvier 2007
    Messages : 6 604
    Points : 13 314
    Points
    13 314
    Par défaut
    Citation Envoyé par ppphil Voir le message
    Encore plus simple :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    string content = File.ReadAllText("MyFile.Txt")
    Tiens, je ne connaissais pas cette méthode ReadAllText.
    En effet, c'est plus simple.

  8. #8
    Membre du Club
    Profil pro
    Inscrit en
    Mai 2008
    Messages
    99
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2008
    Messages : 99
    Points : 52
    Points
    52
    Par défaut
    je fais que cette ligne , c tout ?

  9. #9
    Membre éclairé Avatar de ppphil
    Profil pro
    Inscrit en
    Juin 2007
    Messages
    612
    Détails du profil
    Informations personnelles :
    Localisation : Suisse

    Informations forums :
    Inscription : Juin 2007
    Messages : 612
    Points : 685
    Points
    685
    Par défaut
    Ouais, tu peux même rajouter un ; à la fin

  10. #10
    Membre du Club
    Profil pro
    Inscrit en
    Mai 2008
    Messages
    99
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2008
    Messages : 99
    Points : 52
    Points
    52
    Par défaut
    oui c ca , cool
    merci

  11. #11
    Membre du Club
    Profil pro
    Inscrit en
    Mai 2008
    Messages
    99
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2008
    Messages : 99
    Points : 52
    Points
    52
    Par défaut
    mais j'ai toujours le meme message d'erreur

    Error : Embedded statement cannot be a declaration or labeled statement

  12. #12
    Membre éclairé Avatar de ppphil
    Profil pro
    Inscrit en
    Juin 2007
    Messages
    612
    Détails du profil
    Informations personnelles :
    Localisation : Suisse

    Informations forums :
    Inscription : Juin 2007
    Messages : 612
    Points : 685
    Points
    685
    Par défaut
    Mais qu'est-ce que tu bricoles ?
    tu développe avec quel outil ?
    Tu peux nous montrer ton code que l'on puisse comprendre ?

  13. #13
    Membre du Club
    Profil pro
    Inscrit en
    Mai 2008
    Messages
    99
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2008
    Messages : 99
    Points : 52
    Points
    52
    Par défaut
    bah je travaille ac Microsoft Visual studio 2005

    voici mon code :

    private void button_mergeData_Click(object sender, EventArgs e)
    {
    string folderSelected = string.Empty;
    folderSelected=dataFolder + @"\"+comboBox_dataFolderForMerging.SelectedItem.ToString();
    //créer le dossier de destination s'il n'existe pas
    if (!Directory.Exists(folderSelected + @"\Final"))
    Directory.CreateDirectory(folderSelected + @"\Final");
    //faire une boucle pour lister les dossier dans dataFolder/folderSelected
    String[] reps = Directory.GetDirectories(folderSelected);
    foreach(String dir in reps)
    {
    //maCombo.Items.Copy(string DataFolder);
    if (dir != (folderSelected + @"\Final"))
    {
    copyFiles(folderSelected, dir);
    }
    }
    //tableau de 4 string
    String[] MergedFile = new String[4];
    //remplir avec les noms de fichier à fusionner
    MergedFile[0] = "event.txt";
    MergedFile[1] = "critere.txt";
    MergedFile[2] = "relevent.txt";
    MergedFile[3] = "entreprises.txt";


    //boucle foreach sur MergedFile
    foreach (MergedFile file in MergeFile)
    {
    //créer le fichier Final
    String FinalFile = selectedFile + @"\Final";

    }


    //boucle foreach sur reps(dossier)
    foreach (String dir in reps)

    //recuperer le contenu du fichier.txt dans une variable
    string content = File.ReadAllText("Final.Txt");

    }

    //coller le contenu de la variable dans fichier.txt final

    }

    /// <summary>
    /// copy les fichiers _events.txt et _monthly.txt
    /// </summary>
    private void copyFiles(string selectedDirectory, string directory)
    {


    //dossier source
    DirectoryInfo di = new System.IO.DirectoryInfo(directory);
    String FinalDirectory = selectedDirectory + @"\Final";

    FileInfo[] files = di.GetFiles();


    try
    {
    foreach (FileInfo file in files)
    {

    if (file.Name.IndexOf("_events") > 0 || file.Name.IndexOf("_monthly") > 0)
    {
    File.Copy(directory + @"\" + file.Name.ToString(), FinalDirectory + @"\" + file.Name.ToString(), true);
    }


    }
    }

    //gerer les exceptions

    catch (Exception ex)
    {
    Console.WriteLine(ex.Message);
    }
    }


    ce que je dois faire c de :
    recuperer le contenu du fichier.txt dans une variable
    et de coller le contenu de la variable dans fichier.txt final

    voila
    merci

  14. #14
    Membre averti
    Profil pro
    Inscrit en
    Février 2003
    Messages
    311
    Détails du profil
    Informations personnelles :
    Âge : 42
    Localisation : Belgique

    Informations forums :
    Inscription : Février 2003
    Messages : 311
    Points : 337
    Points
    337
    Par défaut
    Le problème vient (entre autres) de là:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    foreach (String dir in reps)
                 //recuperer le contenu du fichier.txt dans une variable
                 string content = File.ReadAllText("Final.Txt");
    Tu déclares un string FinalFile dans le scope du foreach, et tu n'en fais rien...

    Il faut que tu encadres avec des paranthèses.

    Ceci dit, ton code est boiteux. Quelle(s) utilité(s) à :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    //boucle foreach sur MergedFile
                foreach (MergedFile file in MergeFile)
                {
                    //créer le fichier Final
                    String FinalFile = selectedFile + @"\Final";
                }
     
               //boucle foreach sur reps(dossier)
                foreach (String dir in reps)
                //recuperer le contenu du fichier.txt dans une variable
                string content = File.ReadAllText("Final.Txt");
    }
    Tu déclares un MergedFile file que tu n'utilises pas, et ensuite tu déclares un string dir dans ton foreach, qui là non plus ne te sert à rien.

    Ca compile au moins?

  15. #15
    Membre éclairé Avatar de ppphil
    Profil pro
    Inscrit en
    Juin 2007
    Messages
    612
    Détails du profil
    Informations personnelles :
    Localisation : Suisse

    Informations forums :
    Inscription : Juin 2007
    Messages : 612
    Points : 685
    Points
    685
    Par défaut
    Attends un peu...
    Juste pour dire...
    1. mets ton code entre les balises code
    2. fais de l'ordre dans ton code et va voir ce qui se passe dans ton code en double cliquant sur le message d'erreur de compil..
    3. écris ton code avec un tout petit peu de méthode

    tu as mis :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    foreach (String dir in reps)
     
    //recuperer le contenu du fichier.txt dans une variable
    string content = File.ReadAllText("Final.Txt");
     
    }
    ET LA { !!!!!!!!
    en français l'erreur ça donne ça : Erreur 7 L'instruction incorporée ne peut pas être une déclaration ni une instruction étiquetée

    Allez, allez, un tout petit peu de concentration !!!!!

  16. #16
    Membre du Club
    Profil pro
    Inscrit en
    Mai 2008
    Messages
    99
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2008
    Messages : 99
    Points : 52
    Points
    52
    Par défaut
    oui je vois un peu vos remarques mais je dois coller le contenu de la variable contenant que j'ai recuperé dans un autre fichier que j'ai crée précedement qui est fichier.txt final, voila

    maintenant comment je dois coller ce contenu ?
    d'ailleurs c un travail imposé , voila

    l'idée c de copier le contenu de 2 fichiers fusionnées dans un 3 eme fichier qui est final.txt se trouvant dans le repertoire reps .

    merci d'avance .

  17. #17
    Membre éclairé Avatar de ppphil
    Profil pro
    Inscrit en
    Juin 2007
    Messages
    612
    Détails du profil
    Informations personnelles :
    Localisation : Suisse

    Informations forums :
    Inscription : Juin 2007
    Messages : 612
    Points : 685
    Points
    685
    Par défaut
    Ben, j'sais pa moi... mais par exemple :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
    string content = File.ReadAllText("Monfichier");
    File.AppendAllText("Monautrefichier", content)
    ou encore :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    File.AppendAllText("Monautrefichier", File.ReadAllText("Monfichier"));
    Mais bon, si tu te bouge un peu et que tu fouilles, tu trouvera toutes les solutions dont tu as besoin.
    Mais tu n'as pas l'air très motivé.... j'me trompe ?

  18. #18
    Membre du Club
    Profil pro
    Inscrit en
    Mai 2008
    Messages
    99
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2008
    Messages : 99
    Points : 52
    Points
    52
    Par défaut
    ok je vais tester ca , merci

    motivé mais j'ai du boulot en paralléle .

  19. #19
    Inactif  
    Homme Profil pro
    Chef de projet NTIC
    Inscrit en
    Janvier 2007
    Messages
    6 604
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 63
    Localisation : France

    Informations professionnelles :
    Activité : Chef de projet NTIC

    Informations forums :
    Inscription : Janvier 2007
    Messages : 6 604
    Points : 13 314
    Points
    13 314
    Par défaut
    Citation Envoyé par emayen01 Voir le message
    motivé mais j'ai du boulot en paralléle .
    T'es un peu gonflé, là !

    Tu t'imagine que tous ceux qui prennent du temps pour répondre ici n'ont que cela à faire qu'à attendre toute la journée qu'une question se présente sur dvp ?

  20. #20
    Membre du Club
    Profil pro
    Inscrit en
    Mai 2008
    Messages
    99
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2008
    Messages : 99
    Points : 52
    Points
    52
    Par défaut
    c pas ce que je voulais dire
    chacun a ses preoccupations bien sur
    mais juste on parlait de motivations avec ppphil
    voila

Discussions similaires

  1. [Batch] Mettre une ligne d'un fichier texte dans une variable
    Par guiguir68 dans le forum Scripts/Batch
    Réponses: 2
    Dernier message: 21/08/2014, 16h45
  2. Réponses: 6
    Dernier message: 06/03/2009, 14h57
  3. Récupérer un bout de fichier texte dans une variable
    Par killerman31 dans le forum Scripts/Batch
    Réponses: 4
    Dernier message: 15/01/2009, 12h03
  4. [E-00]Recuperer contenu fichier texte dans une feuil excel
    Par bastien_moi dans le forum Macros et VBA Excel
    Réponses: 6
    Dernier message: 16/10/2008, 16h34
  5. Récupérer le contenu d'un fichier texte dans une variable
    Par heureactuelle dans le forum MATLAB
    Réponses: 2
    Dernier message: 17/05/2008, 15h10

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