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 :

Modifier un fichier texte.


Sujet :

C#

  1. #1
    Membre du Club
    Homme Profil pro
    Inscrit en
    Octobre 2011
    Messages
    63
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Octobre 2011
    Messages : 63
    Points : 47
    Points
    47
    Par défaut Modifier un fichier texte.
    j'ai un fichier texte de ce type:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
    <param1><url>http:...</url><dud1>montextedudomainupdown1</dud1><dud2>montextedudomainupdown2</dud2><dud3>montextedudomainupdown3</dud3></param1>
    <param2><url>http:...</url><dud1>montextedudomainupdown1</dud1><dud2>montextedudomainupdown2</dud2><dud3>montextedudomainupdown3</dud3></param2>
    <param3><url>http:...</url><dud1>montextedudomainupdown1</dud1><dud2>montextedudomainupdown2</dud2><dud3>montextedudomainupdown3</dud3></param3>
    <param4><url>http:...</url><dud1>montextedudomainupdown1</dud1><dud2>montextedudomainupdown2</dud2><dud3>montextedudomainupdown3</dud3></param4>
    J'aimerai pouvoir modifier les valeurs comprise entre <paramx></paramx> sans toucher aux autres param.
    Donc je suppose lire mon fichier texte(a coup de readline), trouver la ligne param qui m'interesse (a coup de Regex.match) et la remplacer par mes nouveaux param et sauvegarder le tout.
    Mon souci c'est surtout "remplacer" qu'une partie du fichier sans toucher le reste et sauvegarder.
    J'espère c'est assez clair. Merci d'avance.

  2. #2
    Membre du Club
    Homme Profil pro
    Inscrit en
    Octobre 2011
    Messages
    63
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Octobre 2011
    Messages : 63
    Points : 47
    Points
    47
    Par défaut
    bon j'ai trouvé.
    String Reader
    String Builder avec un match
    String Writer à la fin avec mon string builder.
    Rien de bien compliqué en fait.
    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
    private void saveparam(string paramtype)
    {
        Lock(this)
        {
            string param = Path.GetDirectoryName(Assembly.GetExecutingAssembly().GetModules()[0].FullyQualifiedName) + @"\settings\param\" + this.Login + ".txt";
            if (System.IO.File.Exists(param))
            {
                string str1;
                string str2 = string.Concat(new object[] { "<" + paramtype + "><url>", this.Av_url, "</url><dud1>", this.domainUpDown1.Text, "</dud1><dud2>", this.domainUpDown2.Text, "</dud2><dud3>", this.domainUpDown3.Text, "</dud3></" + paramtype + ">" });
                string matchok = "Failed";
                Match match1;
                StreamReader reader = new StreamReader(param);
                StringBuilder sb = new StringBuilder();
                while ((str1 = reader.ReadLine()) != null && str1 != "")
                {
                    match1 = Regex.Match(str1, "<" + paramtype + ">(.*)</" + paramtype + ">");
                    if (match1.Success)
                    {
                        matchok = "True";
                        str1 = str3;
                    }
                    sb.AppendLine(str1);
                }
                if (matchok == "Failed")
                {
                    sb.AppendLine(str3);
                }
                reader.Close();
                using (StreamWriter writer = new StreamWriter(Path.GetDirectoryName(Assembly.GetExecutingAssembly().GetModules()[0].FullyQualifiedName) + @"\settings\param\" + this.Login + ".txt"))
                {
                    writer.WriteLine(sb.ToString());
                    writer.Close();
                }
            }
        }
    }

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

Discussions similaires

  1. [VBA-E] modifier un fichier texte avant import
    Par hka75 dans le forum Macros et VBA Excel
    Réponses: 11
    Dernier message: 04/04/2007, 21h13
  2. modifier un fichier texte
    Par gennydude99 dans le forum VB 6 et antérieur
    Réponses: 10
    Dernier message: 20/10/2006, 22h54
  3. [vb.net] Modifier un fichier texte
    Par olbi dans le forum Windows Forms
    Réponses: 2
    Dernier message: 06/10/2006, 15h31
  4. Réponses: 3
    Dernier message: 06/10/2006, 14h21
  5. comment utiliser Notepad pour modifier un fichier texte?
    Par moon13_698 dans le forum Autres Logiciels
    Réponses: 7
    Dernier message: 06/05/2006, 15h41

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