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 :

Lire fichier dans TextBox


Sujet :

C#

  1. #1
    Nouveau membre du Club
    Inscrit en
    Octobre 2007
    Messages
    80
    Détails du profil
    Informations forums :
    Inscription : Octobre 2007
    Messages : 80
    Points : 37
    Points
    37
    Par défaut Lire fichier dans TextBox
    Bonjour à tous et à toutes ,


    je souhaite lire des OCTETS dans un fichier , le string commence a FED879
    jusqu'a EB3547 dans le fichier y'a un seul string FED879 et EB3547 .


    J'ai penser a une boucle FOR pour parcourir le fichier et commencer a lire de
    FED879 JUSQU'A EB3547 , y'a environs 12 lignes entre les DEUX string .


    Sur le site de MICROSOFT j'ai utilisé Seek( offset, BEGIN) et SEEK (Offset,END)

    Mais ça ne marche pas , merci de me conseillé quoi faire .

  2. #2
    Expert confirmé
    Avatar de ced600
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Août 2006
    Messages
    3 364
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France

    Informations professionnelles :
    Activité : Développeur .NET

    Informations forums :
    Inscription : Août 2006
    Messages : 3 364
    Points : 4 061
    Points
    4 061
    Par défaut
    Pas compris ce que tu racontes . Au cas où tu veux faire cela ? :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    string[] contenu = File.OpenText("TonFichier").ReadToEnd().Split(Environment.NewLine.ToCharArray());
    int i = 0;
    foreach (string line in contenu)
    {
         if (line != "")
         {
               TextBox1.Text = TextBox1.Text + " " + contenu[i];
         }
         i++;
    }
    Pourquoi faire compliqué lorsque l'on peut faire encore plus compliqué.

  3. #3
    Nouveau membre du Club
    Inscrit en
    Octobre 2007
    Messages
    80
    Détails du profil
    Informations forums :
    Inscription : Octobre 2007
    Messages : 80
    Points : 37
    Points
    37
    Par défaut
    Salut ,





    Merci pour la réponse , je souhaite lire le fichier a partir E677662E et JUSQU'A
    017345F8
    Images attachées Images attachées  

  4. #4
    Expert éminent sénior
    Avatar de Skyounet
    Homme Profil pro
    Software Engineer
    Inscrit en
    Mars 2005
    Messages
    6 380
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 37
    Localisation : Etats-Unis

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

    Informations forums :
    Inscription : Mars 2005
    Messages : 6 380
    Points : 13 380
    Points
    13 380
    Par défaut
    Pas trop compris non plus.
    Donc déjà si j'ai bien compris c'est pas un fichier texte.

    Là dans ton image tu as ouvert un fichier avec un éditeur hexadécimal non ?
    Introduction à Silverlight 4 (new) ; Localisation d'une application Silverlight (new) ;
    Mon espace perso[/B]

    La connaissance s’acquiert par l’expérience, tout le reste n’est que de l’information. Albert Einstein[/SIZE]

  5. #5
    Nouveau membre du Club
    Inscrit en
    Octobre 2007
    Messages
    80
    Détails du profil
    Informations forums :
    Inscription : Octobre 2007
    Messages : 80
    Points : 37
    Points
    37
    Par défaut
    Bonsoir Skyrunner ,


    Oui , c'est un fichier.Binaire charger dans un Editeur Hexadecimal .


    Je souhaite utiliser la fonction Fseek pour lire fichier Binaire a partir E677662E et JUSQU'A 017345F8 et l'afficher dans une TexBox .


    En résumé : Lire le fichier binaire de E677662E à 017345F8 et afficher dans une Text.Box .

  6. #6
    Rédacteur
    Avatar de Thomas Lebrun
    Profil pro
    Inscrit en
    Octobre 2002
    Messages
    9 161
    Détails du profil
    Informations personnelles :
    Âge : 41
    Localisation : France

    Informations forums :
    Inscription : Octobre 2002
    Messages : 9 161
    Points : 19 434
    Points
    19 434
    Par défaut
    Tu peux récupérer le contenu du fichier dans une string puis faire des SubString dessus mais c'est pas viable comme technique

  7. #7
    Nouveau membre du Club
    Inscrit en
    Octobre 2007
    Messages
    80
    Détails du profil
    Informations forums :
    Inscription : Octobre 2007
    Messages : 80
    Points : 37
    Points
    37
    Par défaut
    Merci pour ton conseil , donc la meilleure façon d'afficher des OCTETS spécifique sur la txt_Box est laquelle ?
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
    Fseek( String , BEGIN)
    Fseek(String, END)

    Fred .

  8. #8
    Membre régulier Avatar de Onlava
    Profil pro
    Inscrit en
    Mai 2007
    Messages
    92
    Détails du profil
    Informations personnelles :
    Localisation : Suisse

    Informations forums :
    Inscription : Mai 2007
    Messages : 92
    Points : 112
    Points
    112
    Par défaut
    1) Utilise BinaryReader pour lire ton fichier.
    2) Fais un Seek sur le FileStream à la position souhaitée.
    3) Utilise BitConverter.ToString() pour avoir une représentation hexadécimale
    de ton buffer.
    XOR Onlava, Onlava

  9. #9
    Nouveau membre du Club
    Inscrit en
    Octobre 2007
    Messages
    80
    Détails du profil
    Informations forums :
    Inscription : Octobre 2007
    Messages : 80
    Points : 37
    Points
    37
    Par défaut
    Merci Onlava je vais essayer avec le Fseek , car le fichier est déja charger dans la text_Box .

    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
     
    private void Hex_Editor()
            {
                if (m_oOpenFile == null)
                    return;
     
                m_aCurrentBytes = new List<byte[]>();
                m_iSelectedOffset = -1;
                m_bHighlighted = true;
     
     
                FileStream Fs = new FileStream(m_oOpenFile.FullName, FileMode.Open, FileAccess.Read ,FileShare.ReadWrite);
                BinaryReader Br = new BinaryReader(Fs);
     
                Fs.Position = m_iOffset;
     
     
      for (int i = 0; i < ScreenLines; i++)
                {
                    m_aCurrentBytes.Add(Br.ReadBytes(ciNbBytesPerLine));
     
                    if (m_aCurrentBytes[i].Length == 0)
                        break;
     
                    LoOffsetGr.DrawString((m_iOffset + ciNbBytesPerLine * i).ToString("X8"), c_oFont,Brushes.White, 0, i * ciLineHeight);
     
                    for (int j = 0; j < m_aCurrentBytes[i].Length; j++)
                    {
                        if (m_aChanges.ContainsKey(m_iOffset + i * ciNbBytesPerLine + j))
                        {
                            string LsByte = m_aChanges[m_iOffset + i * ciNbBytesPerLine + j];
                            if (LsByte.Length == 2)
                                m_aCurrentBytes[i][j] = byte.Parse(LsByte, NumberStyles.HexNumber);
                        }
                        LoHexaGr.DrawString(m_aCurrentBytes[i][j].ToString("X2"), c_oFont, Brushes.Beige,
                            j * ciHexaWidth, i * ciLineHeight);
     
                        LoAsciiGr.DrawString(((char)m_aCurrentBytes[i][j]).ToString(), c_oFont, Brushes.Beige,
                           j * ciAsciiWidth, i * ciLineHeight);
                    }
                }
     
     
    Br.Close();
    Fs.Close();
     
     
            }



    Cordialement ,
    Fred .

  10. #10
    Expert confirmé
    Avatar de ced600
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Août 2006
    Messages
    3 364
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France

    Informations professionnelles :
    Activité : Développeur .NET

    Informations forums :
    Inscription : Août 2006
    Messages : 3 364
    Points : 4 061
    Points
    4 061
    Par défaut
    Cela marche ?
    Si c'est le cas n'oublis pas le Tag résolu, sinon dis nous ce qui marche pas dans ce nouveau code.
    Pourquoi faire compliqué lorsque l'on peut faire encore plus compliqué.

  11. #11
    Membre expert
    Avatar de hed62
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Juillet 2007
    Messages
    2 029
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 39
    Localisation : France, Nord (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Développeur .NET
    Secteur : Santé

    Informations forums :
    Inscription : Juillet 2007
    Messages : 2 029
    Points : 3 134
    Points
    3 134
    Par défaut
    Ok, je réagi à un post un peu ancien mais :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    string[] contenu = File.OpenText("TonFichier").ReadToEnd().Split(Environment.NewLine.ToCharArray());

    Ne me plait guère : si ton fichier fait quelques milliers de lignes, tu explose ton quota de RAM !

    Je préfère de loin la méthode dont je ne me souviens pas de la syntaxe par coeur malheureusement.

    car le fichier est déja charger dans la text_Box .
    Si le fichier est déja chargé en textbox, il te faut en réalité tronquer ta String, non ?

    Sinon, la solution de Onlava me parait pas mal. Penses au tag résolu !
    Hervé Delannoy, Ingénieur études&développement.

    Je n'accepte pas les demandes de mise en relation MSN/yahoo sans motif.
    ------------------------------------------------------------------------
    Si , ni , ne peuvent vous aider, mais nous oui, pensez à un pti et au !
    Merci de vous relire
    ____________________________________________________________________________________
    Recherche joueurs de "Magic" sur Lille et environs.
    Donner plutôt que jeter.

  12. #12
    Expert confirmé
    Avatar de ced600
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Août 2006
    Messages
    3 364
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France

    Informations professionnelles :
    Activité : Développeur .NET

    Informations forums :
    Inscription : Août 2006
    Messages : 3 364
    Points : 4 061
    Points
    4 061
    Par défaut
    [QUOTE]Ok, je réagi à un post un peu ancien mais :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    string[] contenu = File.OpenText("TonFichier").ReadToEnd().Split(Environment.NewLine.ToCharArray());[/
    QUOTE]

    Je suis d'accord avec toi, mais comme je ne savais pas ce qu'il voulait, j'ai mis un premier truc pour l'aider. Maintenant il est clair que c'est à adapter en fonction de la taille du fichier. Moi je n'utilise que des petits fichiers qui n'évoluent pas dans le temps, alors je suis en général dans cet optique lorsque je met un code d'un traitement de fichier.

    Mais un truc du genre est mieux :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    string line ="";
    StreamReader sr = File.OpenText("Fichier");
    while (sr.Peek() != -1)
    {
         line = sr.ReadLine();
         //Traitement de la ligne
    }
    sr.Close();
    Pourquoi faire compliqué lorsque l'on peut faire encore plus compliqué.

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

Discussions similaires

  1. Lire fichier dans une servlet
    Par alaninho dans le forum Servlets/JSP
    Réponses: 1
    Dernier message: 22/04/2013, 17h30
  2. Réponses: 8
    Dernier message: 19/03/2013, 12h56
  3. Lire Fichier Texte Dans Une TextBox Par FTP
    Par pipoi26 dans le forum VB.NET
    Réponses: 5
    Dernier message: 16/02/2011, 18h21
  4. Lire fichier dans le bin
    Par Tristan Zwingelstein dans le forum ASP.NET
    Réponses: 2
    Dernier message: 07/12/2009, 10h19
  5. Réponses: 9
    Dernier message: 05/04/2005, 09h39

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