Construire un fichier CSV & problème de guillemets

Résolu
rbidocho Messages postés 41 Date d'inscription jeudi 7 juin 2007 Statut Membre Dernière intervention 15 septembre 2008 - 20 juin 2007 à 18:53
rbidocho Messages postés 41 Date d'inscription jeudi 7 juin 2007 Statut Membre Dernière intervention 15 septembre 2008 - 20 juin 2007 à 19:24
    Bonjour,

Dans le programme que je refais en C# (avant en VB.Net), je souhaite écrire dans un fichier csv (avec réellement des virgules comme séparateur). Dans ce fichier, je vais écrire du texte et aussi des nombres.
les questions :

1 comment faire ce petit fichier ?
    Pour l'instant j'en suis là !!
            void EnregistrerFichierCorrigé()
            {
                string[] R = this.txtNomFichier.Text.Split('\\');
                string NF = R[R.Length - 1].ToLower()+ "c";
                string sFileName = this.txtRépertoiresFichiersCorrigés.Text + "\" + NF;

                FileStream fS = new FileStream(sFileName, FileMode.Create, FileAccess.Write);
                StreamWriter sW = new StreamWriter(fS);

                sW.Write(Convert.ToSingle(this.txtNum.Text)+",");
                sW.Write(this.txtMa.Text.ToString() + ",");
                sW.Write(this.txtMo.Text.ToString() + ",");
                sW.Write(this.txtTy.Text.ToString() + "\r\n");
          }

    ça marche bien mais là est la question 2
   
2 comment mettre des guillemets (") autour des string ?

à la fin cela
doit donner çà :

455,"xxx","yyy","zzz"
2.3,"dss",45

etc..

merci pour vos réponses

RB

2 réponses

cs_niky Messages postés 168 Date d'inscription jeudi 28 juin 2001 Statut Membre Dernière intervention 18 octobre 2008 7
20 juin 2007 à 19:15
Pour mettre des guillemets, utilise le caractère d'échappement (backslash) :
sW.Write(""" + this.txtMa.Text.ToString() + "",");
3
rbidocho Messages postés 41 Date d'inscription jeudi 7 juin 2007 Statut Membre Dernière intervention 15 septembre 2008
20 juin 2007 à 19:24
Merci Niky,

j'y avais bien pensé, mais je voulais une instruction du type WriteLine qui existe en VB après un FileOpen ;
            FileOpen(F, sFileName, OpenMode.Output, OpenAccess.Write)
            WriteLine(F, CSng(MetxtNum.Text), txtMa.Text, txtMo.Text, txtTy.Text)

RB
0