所以我知道这已被问到,但我有点挣扎。我有一个基本的Windows窗体程序,它将4个值存储到一个数组,然后在列表视图中显示它。但现在我有一个额外的按钮,如果我点击它,我只是希望它保存存储的值并将其导出到文本文件。 直接从阵列中导出它会更容易吗?我怎么能这样做?
提前致谢。
答案 0 :(得分:3)
File.WriteAllLines(path, array, Encoding.UTF8);
答案 1 :(得分:1)
using (TextWriter tw = new StreamWriter(@"C:\listViewContent.txt")) {
foreach (ListViewItem item in listView.Items) {
tw.WriteLine(item.Text);
}
}
答案 2 :(得分:1)
只是有人仍然需要它,这只是一个彻底的版本@othiel回答子项目
try
{
using (System.IO.TextWriter tw = new System.IO.StreamWriter(@"C:\listViewContent.txt"))
{
foreach (ListViewItem item in listView1.Items)
{
tw.WriteLine(item.Text);
for (int a = 1; a <= 3; a++ ) //the 3 = number of subitems in a listview
{
tw.WriteLine(item.SubItems[a].Text);
}
}
}
}
catch {
MessageBox.Show("TEXT FILE NOT FOUND");
}
只需确保详细设置listView1。
答案 3 :(得分:0)
现在,用花哨的保存文件对话框! :)
private void saveButton_Click(object sender, EventArgs e)
{
Microsoft.Win32.SaveFileDialog dlg = new Microsoft.Win32.SaveFileDialog();
dlg.FileName = "DumpFile1"; // Default file name
dlg.DefaultExt = ".txt"; // Default file extension
dlg.Filter = "Text files (.txt)|*.txt"; // Filter files by extension
// Show save file dialog box
Nullable<bool> result = dlg.ShowDialog();
// Process save file dialog box results
if (result == true)
{
// Save document
string filename = dlg.FileName;
File.WriteAllLines(filename, array, Encoding.UTF8); //array is your array of strings
}
}
您需要向 PresentationFramework 添加参考。 (右键单击解决方案资源管理器中的引用 - &gt; 添加引用,在 .NET 选项卡中选择 PresentationFramework )