2010-05-17 145 views
1

我有一个带有两个数据网格和多个文本框的winform。我想让用户选择将这些数据导出到他们选择的驱动器上的文本文档中。我也想对文本文档进行预格式化,并从文本框和数据网格中的值作为插件。将winform数据导出到.txt文件

是否有可能预格式化使用StreamWriter的一个txt文件?以及如何让用户选择保存此导出文件的位置?

+0

Winform。对不起,没有清除 – EvanRyan 2010-05-17 19:49:42

+0

@EvenRyan:因为你在标签中有“C#”,你不需要它在主题中。 – 2010-05-17 19:53:00

+0

了解。在任何意义上,我仍然是一个新手。我对此表示歉意,以及我很难理解的问题。 – EvanRyan 2010-05-17 19:58:45

回答

2

你将不得不通过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(); 
} 

输出到文件

客户编号:[12345678]用户名:[用户名]
地址:[地址]

其中方括号内的信息是信息用户通过TextBoxes输入。

1

我不完全确定你的意思是预格式化文本文档。 StreamWriter可用于以指定数据的任何格式写出。它真的要归结为如何将数据提供给StreamWriter。例如,如果你希望你的网格行显示为csv,每写一个项目,添加一个逗号(最后一个元素除外),然后在最后一个元素写入一个新行后,重复所有行。如果我错过了什么,请告诉我。

至于如何让用户选择保存在哪里应该使用SaveFileDialog控件(它应该在Visual Studio的工具箱中)。这将打开资源管理器视图,允许用户选择位置和名称)。有关如何实际使用课程的详细信息,请参阅链接的文档。这是相当直接的