2 votes

Exportation de données winform vers un fichier .txt

J'ai un winform avec deux grilles de données et plusieurs zones de texte. Je veux donner à l'utilisateur la possibilité d'exporter ces données vers un document texte à l'emplacement de son choix sur son disque. Je souhaite également que le document texte soit préformaté et que les valeurs des zones de texte et des grilles de données y soient insérées.

Est-il possible de préformater un document txt en utilisant StreamWriter ? Et comment puis-je donner à l'utilisateur le choix de l'endroit où enregistrer ce fichier exporté ?

2voto

Will Marcouiller Points 11649

Vous devrez formater la chaîne que vous voulez écrire à travers le StreamWriter.

using(StreamWriter sw = new StreamWriter(filePath)) {
    string firstLine = string.Concat("\n", string.Format(@"Customer number: {0}, Customer name: {1}", textBox1.Text, textBox2.Text));
    string secondLine = string.Format(@"Address: {0}", textBox3.Text);

    sw.WriteLine(firstLine);
    sw.WriteLine(secondLine);

    // Loop through your DataGridView.Rows or Cells and do the same.

    sw.Flush();
    sw.Close();
}

Sortie vers le fichier

Numéro de client : [12345678] Nom du client : [nom du client].
Adresse : [adresse]

Les informations entre crochets sont les informations saisies par l'utilisateur dans les boîtes de texte.

1voto

Craig Suchanec Points 3585

Je ne suis pas tout à fait sûr de ce que vous entendez par "préformater un document texte". Le StreamWriter peut être utilisé pour écrire les données dans le format que vous spécifiez. Tout dépend de la façon dont vous fournissez les données au StreamWriter. Par exemple, si vous voulez que les lignes de votre grille apparaissent sous forme de csv, écrivez chaque élément, ajoutez une virgule (sauf pour le dernier élément), puis après le dernier élément écrivez une nouvelle ligne, répétez pour toutes les lignes. Si quelque chose m'échappe, faites-le moi savoir.

Pour ce qui est de la manière de donner à l'utilisateur le choix de l'emplacement de la sauvegarde, vous devez utiliser la fonction SaveFileDialog (il devrait se trouver dans votre boîte à outils dans Visual Studio). Cela ouvrira la vue de l'explorateur qui permettra à l'utilisateur de sélectionner l'emplacement et le nom). Consultez la documentation liée pour plus de détails sur la façon d'utiliser la classe. C'est assez simple

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X