2010-05-17 13 views
1

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 dans un emplacement de leur choix sur leur disque. Je souhaite également que le document texte soit préformaté et que les valeurs des zones de texte et des diagrammes de données soient connectées.Exportation de données WinForm dans un fichier .txt

Est-il possible de pré-formater un document txt à l'aide de StreamWriter? Et comment faire pour donner à l'utilisateur la possibilité de sauvegarder ce fichier exporté?

+0

Winform. Désolé de ne pas effacer cela – EvanRyan

+0

@EvenRyan: puisque vous avez "C#" dans les balises, vous n'en avez pas non plus besoin dans le sujet. –

+0

compris. Je suis toujours un débutant dans tous les sens du mot. Je m'excuse pour cela, et j'ai du mal à comprendre les questions. – EvanRyan

Répondre

2

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 dans un fichier

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

Lorsque les informations entre crochets est l'information entrée par l'utilisateur à travers les TextBoxes.

1

Je ne suis pas entièrement sûr de ce que vous entendez par pré-format d'un document texte. Le StreamWriter peut être utilisé pour écrire dans n'importe quel format que vous spécifiez les données. Cela va vraiment se résumer à la façon dont vous fournissez les données à StreamWriter. Par exemple, si vous voulez que vos lignes de grille apparaissent en tant que csv écrivez chaque élément, ajoutez une virgule (sauf pour le dernier élément) et après que le dernier élément a écrit une nouvelle ligne, répétez pour toutes les lignes. Si quelque chose me manque, s'il vous plaît faites le moi savoir.

En ce qui concerne la façon de donner à l'utilisateur la possibilité d'enregistrer où vous devriez utiliser le contrôle SaveFileDialog (il devrait être 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). Voir la documentation liée pour plus de détails sur l'utilisation de la classe. C'est assez simple